【发布时间】:2011-10-09 11:28:01
【问题描述】:
我们有一个销售给多个客户的代码库。我们使用 git 进行版本控制,使用 Capistrano 进行自动化部署。
设计布局、css 文件、徽标和配置文件(如 CAKEPHP 的前端控制器)之间存在细微差异,其中包含应用程序和 cakephp 目录的路径。
我们目前有该项目的主要 master/staging 分支。我们在主题分支中开发,一旦主题分支准备好合并到代码库中,我们将主题分支合并到暂存中并部署到我们的主暂存服务器。
一旦代码在 staging 上经过测试并且我们准备好发布,我们会将 staging 合并到 master 中。然后我们必须部署到不同的客户端服务器。我们为每个客户提供一个登台和生产服务器。
目前,我们为每个客户端都有一个暂存和生产分支,我们从每个单独的分支部署到每个服务器。这变得很痛苦,因为我们必须将我们的主项目分支合并到每个客户端的暂存/生产分支中,并为每个服务器运行cap deploy。
我们如何才能只从一个分支部署到客户端服务器,但包含每个客户端服务器工作和看起来正常所需的不同文件?
【问题讨论】:
标签: git cakephp deployment capistrano