1

我们需要的:

我的团队正在维护并为已经投入生产的产品添加功能。我们正在尝试找出如何改进我们的部署策略,以便我们可以开始一次部署一个功能,而不是大量的功能。理想情况下,当一个功能通过 QA 和业务验收时,我们希望将这个功能部署到生产中(随时)。

我们现在在做什么:(那行不通)

我们已经在遵循“每个功能分支”的概念。现在,我们正在开发分支中创建新的功能分支。当我们完成一个功能时,我们会创建一个 pull-request 返回到 dev 分支。该拉取请求看起来很棒......它只有与该功能相关的更改。代码审查后,分支合并到 dev master(并部署到 dev),QA 进行查看。一旦 QA 批准了该功能,我们将原始功能分支合并到 staging 分支(并部署到 staging)。一旦业务接受新功能,原始功能分支就会合并到生产中。我们的问题是原始特性分支在投入生产时似乎滚雪球,其中有许多似乎与特性分支无关的更改。到底,

4

2 回答 2

0

使用特性切换进行抽象分支,而不是长时间运行特性分支

于 2013-06-12T07:45:23.090 回答
0

正确执行每个功能的分支。不知何故,整个 linux 内核似乎都很好地采用了这种策略。它也适用于微观层面。

每个功能的分支

于 2013-11-19T02:41:13.690 回答