0

我们有两个分支;Development(开发人员定期检查/集成到其中)和Main(来自 Development 的代码被合并到版本控制/发布中)。

在阅读有关分支“策略”/“最佳实践”的信息时,据说Development必须是Main的一个分支开发必须从Main分支

例如,当阅读 VS ALM Ranger 的分支策略文档中的开发隔离时,它说“开发分支应该是主分支的完整子分支”

为什么Main不能是Development的完整分支?据我了解,开发几乎总是包含Main拥有的所有内容(不包括修补程序)。

从Development合并到Main是更常见的场景。在这种情况下,哪个是“原始”,哪个是分支?

注意:我们使用的是 Visual Studio Team Services

4

1 回答 1

1

在我使用 TFS 的所有经验中,我们使用以下模式:

-主分支(这个分支将反映当前部署的代码)

-- Staging 分支(此分支将作为 QA 的测试环境。如果对您的情况没有意义,可以将其删除。)

---开发分支(这是开发人员将定期检查的分支。)


我们在此设置背后的原因是主分支将反映服务器上当前部署的代码。这样,如果我们确实需要进行热修复,它可以与当前的开发周期完全隔离,因此我们所做的任何事情都不会潜入修复中。

暂存分支本质上是您的QA 部门将执行其验证的地方。一些组织对此的处理方式不同,因此这可能不适用于您的情况。

开发分支将是最“实验性”的分支。这最有可能出现错误和一般的开发人员恶作剧。我们将此分支放在底部,因为如果开发人员发现他/她自己出于任何原因需要从开发分支创建一个分支,那么信息流将是有意义的。向上合并以推送更改,向下合并以获取更新的更改。

我偶然发现这篇文章对最佳合并实践有更好的解释。这应该回答我介绍的任何混淆(:

TFS:合并最佳实践

于 2015-10-19T15:43:12.613 回答