2

我的目标是有这样的结构:

Project X
-- Main
-- QA
-- Dev
  -- Feature X

理想情况下,在开发新功能时,我想分支“主”主干并创建一个新的“开发/功能 X”分支。一旦我准备好测试功能,我想使用合并工具将“功能 X”移动到“QA”。然后在完成并测试后从“QA”分支开始。一旦这是真的,我想从“QA”合并到“Main”。

这可能吗?我想在不进行毫无根据的合并的情况下做到这一点。我不确定如何构建分支以实现此解决方案。

4

1 回答 1

3

是的,这是可能的。

您将分支MainQA,然后分支QAFeature X,Feature Y等。

然后,在Feature分支中开发代码,当特性完成后,将特性分支中的代码合并到QA分支中。让开发人员定期从备份反向集成QA到他们的功能分支也很重要,以确保所有最新的更改都存在并在他们的开发分支中工作。

当发布完成并在 QA 分支中进行测试时,您将其合并回Main,然后(如果您愿意)分支Main到一个Release分支。

在这种情况下,Main应该始终代表经过绝对审查的、可交付的代码——无论是您刚刚交付的代码,还是您即将交付的代码。如果不通过(至少)分支,任何人都不应该修改。MainQA

基本上,您缺少的部分是您的代码应该始终通过QA分支。我通常将此称为“集成”分支而不是“QA”,但目的是相同的。

ALM Rangers 有一个很棒的分支/合并指南——我强烈推荐阅读它!

于 2013-12-03T00:32:15.387 回答