0

我有一个长期存在的功能开发分支,我们称之为 dev-foo。问题是,当我尝试将它合并到 release-1 中时,我会遇到各种可怕的树冲突和源冲突,这些都没有任何意义。我已经将它们重新集成到一个新的基于主干的分支中,以及其他想要集成在一起的功能。我尝试与此集成分支进行的每次合并都同样存在可怕的冲突。我能做些什么?

4

1 回答 1

1

我强烈怀疑您的开发分支中的主干合并之一在解决冲突和提交它的过程中被您意外破坏。这意味着你的开发分支的合并历史是“中毒”的,合并它只会延长你和其他人的痛苦和折磨。

振作起来,一切都不会丢失!

这是我用来“重建”损坏的开发分支以重新集成而不从主干引入先前损坏的合并的方法:

  1. 从启动开发分支的同一点启动一个新分支。
  2. 将所有 dev-branch 修订合并到重建分支中 - 直到但不包括来自其父分支(主干)的下一次合并。
  3. 从 dev-branch-parent(主干)合并到重建分支中与原始 dev-branch 历史中下一步合并的相同修订。这次不要误会了。
  4. 比较(在 SVN URL 之间)此时的 dev-branch 与到目前为止的重建分支。在继续之前证明或解决任何差异。
  5. 重复步骤 2-4,直到您重建了整个开发分支,但没有合并问题。
  6. 将重新集成目标分支合并到重构的开发分支中。
  7. 解决任何开发冲突并测试构建。
  8. Re-integrate 将重构的开发分支合并到目标分支中。
于 2012-05-21T16:09:40.047 回答