2012-07-29 72 views
1

这是我的布局合并永久分支时需要重新合并吗?

/trunk 
/branches/qa 
/branches/dev 

我不打算删除任何该分行在未来

我需要使用--reintegrate从DEV合并到QA什么时候? 或者从QA到/主干

感谢

+0

分支之间的确切关系是什么? “qa”是“dev”的一个分支,“dev”是“trunk”的一个分支,还是都是从“trunk”分支的? – 2012-07-30 07:51:10

+0

'qa'和'dev'都是'trunk'的分支机构 – michaelbn 2012-07-30 07:58:50

回答

1

如果合并方向始终是相同的(即不从QA合并到dev,只有dev亡> QA),简单合并就足够了。

需要单独的模式(重新集成)来避免不必要的合并。在“特性分支”场景的特性分支将在它两件式的变化:

  1. 定期提交
  2. 从主干

合并时,我们希望把该功能为主干,我们要合并(1)。但是,如果我们使用默认合并机制,SVN也会尝试将(2)合并到trunk中,这会导致冲突或隐藏错误,因为这些更改已经存在。

+0

你能解释一下为什么吗? – michaelbn 2012-07-30 08:16:10

+0

我不同意这一点。考虑到分支的名称,这是一个相对安全的假设,将会在'dev'和'qa'之间进行双向合并。 – 2012-07-30 08:30:18

+0

@michaelbn:请参阅编辑 – maxim1000 2012-07-30 08:53:53

1

使用两个分支(包括trunk)之间的重新合并合并,并打算保持源分支,通常是一个坏主意。在将来的合并中,使用之前的重新合并合并中的源代码的分支有许多奇怪的问题。

的一般的解决方案是重新融合-合并源分支成trunk(其是目标分支),然后滴和重新创建源分支出来trunk合并后。

你,但是,想要做一些稍微不同。

如果您在devqa之间进行重新整合合并?我的建议是避免重新合并合并,使用顺序合并或差异合并,并在合并时遵循创建路径(见下文)。

通常情况下,如果你想改变从dev合并qa,你会合并成devtrunk(并承诺),然后trunkqa(并提交)。换句话说,你按照的创建路径。当审计你的提交和合并时,这给出了合并历史的一个很好的,干净的视图。

如果这不可行,那么您需要额外小心地执行分支到分支合并,并且这些合并通常应该仅限于顺序合并。然后,到时候要么devqa合并到trunk,这将是很容易做的。

希望这会有所帮助。