【问题标题】:Development workflow, Joomla, GIT开发工作流程,Joomla,GIT
【发布时间】:2011-09-23 18:04:21
【问题描述】:

我对您如何设置开发环境有一些疑问。

我正在运行一个当前使用 SOBI2 的网站。 SOBI2 将被我使用 Nooku 框架创建的自定义组件取代。

到目前为止,我在本地主机上安装了 Joomla。 Nooku 框架和我的自定义组件在我的计算机上它们自己的目录中,然后符号链接到 Joomla 安装。我这样做是因为在开发时将它们分开很好。然后使用 GIT 跟踪我的自定义组件,并在其公共 SVN 存储库中跟踪 Nooku。 我想这是一个非常标准的设置。

所以,现在我想将我的 LIVE Joomla 安装克隆到我的本地主机并使用 GIT 跟踪它,以便能够轻松地将更改推送到我的实时服务器。现在直播网站根本没有版本控制。

那么,我如何轻松做到这一点?

我想最好使用两个 GIT 存储库,一个只包含我的自定义组件,一个用于整个站点。 在开发我的自定义组件和站点时,工作流程将是这样的:

  1. 更改自定义组件并在空的 Joomla 安装中进行测试
  2. 提交更改。
  3. 将更改从我的自定义组件存储库拉入我的本地站点(通过 GIT 镜像实时站点)。
  4. 确保一切正常。
  5. 提交更改并将更改推送到网站 GIT 存储库。
  6. 将更改从站点存储库拉入实时服务器。

我猜数据库更新必须手动处理。

  • 这是一种好的工作方式吗?
  • 如何在本地站点中跟踪自定义组件?我听说过 GIT 子模块,这是它的用途吗?

  • 有没有关于这类东西的好指南?

最好的问候 莱纳斯

【问题讨论】:

  • 这确实是 Git 子模块的用途。我认为如果你在一个目录中创建一个 repo,其中包含目录树中的一个预先存在的 repo,Git 甚至会自动设置它。

标签: git joomla joomla-extensions


【解决方案1】:

我们通过以下方式执行此操作,但使用Mercurial source code management tool

  • 从 bitbucket(或创建本地)
  • Joomla! 安装到该文件夹​​中
  • 将所有核心 joomla 添加到 .hgignore 文件和组件,并确保它们不会被提交
  • 仅将组件添加到存储库, 我们开发的插件、模块

所以基本上我们的存储库文件夹中有 Joomla,但它的所有文件都被忽略,并且不会被提交——除了我们自己的组件的文件。

然后我们将存储库签出到生产服务器,然后安装 Joomla!那里。 (首先结帐,然后只安装 Joomla)。当我们将 repo 签出到生产环境或任何其他地方时,只会签出我们的文件。

对于数据库更改,通常我们有一个 db 文件夹(或任何名称),我们只需添加 SQL 文件以及对数据库进行更改的脚本。您可以使用mysql -uUser -pPass dbname < 12.table_name.change_name.sql 之类的命令轻松调用它们

【讨论】:

  • 这种方法有缺点:开发的站点很少有自定义组件。你不能通过 git 更新这些组件。
猜你喜欢
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 2015-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多