0

我正在尝试使用带有 Drupal 的 Git 来围绕正确的工作流程(开发、测试、实时)。

因此,最初,当实时站点尚不存在且我们仅处于开发阶段时,事情很容易。因此开发人员开发了一个新站点,创建节点、创建内容类型、上传用于节点的图像、配置 Drupal 设置、创建主题等。当一切正常时,我们可以将所有内容(代码和 dB)推送到测试服务器并拥有产品负责人检查一下。如果有问题,我们会在 dev 上修复它,然后再次推送所有内容进行测试。当我们对我们的新网站感到满意并准备好上线时,我们会推动一切从测试到上线。但是,这就是事情变得令人困惑的地方。我已经读过正确的 Git 工作流程是代码只向上游移动,而数据(数据库和站点/默认/文件)向下游移动。因此,如果我只在 dev 上处理自定义模块或者可能在 dev 上安装新的贡献模块并且需要将该代码推送到上游,那么这很好,但是实际创建新内容呢?如果其中一位开发人员的任务是在 dev 上创建一个新页面,该页面由菜单中的一个新菜单条目组成,并包含一些通过 IMCE 或从实际图像上传字段上传到 /sites/default/files/images 的图像怎么办?在自定义内容类型中?这些都不在代码中,然后可以使用 Git 推送到上游。我知道有功能模块可以处理配置设置、视图、内容类型等,但是实际内容和支持图像呢?当 /sites/default/files 永远无法上游并且无法将内容放入代码中时,您如何获得新的内容和图像进行测试和生活?您是否仅在站点启动后才在实时服务器上创建新内容?您是否在开发人员中创建它,然后在测试中再次创建它,然后在现场再次创建它?

我只是想弄清楚一旦网站上线,开发人员如何继续创建具有新内容的新网站部分并推动它上线。

提前致谢。

4

2 回答 2

2

正如您所注意到的,内容向下游移动:所以当代码移动时dev -> test -> live,内容只能移动live -> test -> devlive -> testlive -> dev

您只想在实时站点上创建内容 - 如果需要 - 使用草稿或其他隐藏用户未完成内容的功能。

通常你不需要在开发/测试中使用相同的内容,因为这些站点是用于代码质量测试的——你不应该关心保持实时、测试和开发内容的同步。

于 2013-07-10T18:36:23.987 回答
-1

您可以参考 GIT 中的分支概念,您可以针对不同环境维护不同的分支,请参考此链接 http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging

于 2013-07-10T18:11:53.617 回答