如何重新集成分支,覆盖尚未合并到分支的主干更改?

ela*_*xsj 2 svn tortoisesvn merge branch

在过去的六个月里,我们一直在开设一个功能部门.在此期间对主干进行的大多数提交已合并到分支,但有些主干提交故意不会合并到分支.

现在分支已经完成,我们基本上想要用分支"替换"trunk(我们不需要再也没有合并到分支的trunk更改).对类似问题的回答表明:

  1. 查看从中创建分支的主干版本(而不是HEAD修订版).
  2. 将其提交到存储库(这会撤消所有后续的主干更改).
  3. 你的重新整合合并(你的主干工作副本现在应该与分支相同.)
  4. 提交合并后备箱,你就完成了!

这个答案表明:

svn co http://svnhost/trunk
cd trunk
svn merge http://svnhost/trunk http://svnhost/branches/branchname
Run Code Online (Sandbox Code Playgroud)

在我的案例中,什么是正确的解决方案?

Ste*_*gli 5

如果你真的想要替换你的主干,那么你可以使用Repository Browser(TortoiseSVN)并执行以下操作:

  • 删除主干
  • 使用"复制到"将分支复制到"主干"位置
  • 删除分支

您还可以将分支移动到存储库根目录并将其重命名为"trunk".

如果您使用指向当前主干的外部,如果在引用主干时未使用"peg"修订版,则可能会出现问题.如果你不使用外部,你应该没事.