处理SVN分支重复合并的正确方法是什么?

Sim*_*ens 6 svn tortoisesvn merge branch

在这里,我们有一个SVN存储库,其中包含一个trunk和一个分支,用于在新版本上进行开发.

分支机构即将准备好发布,所以我决定将分支机构重新整合回主干.显然存在一些冲突.包括已在主干中删除的文件中的大量树冲突.

我愉快地解决了所有的冲突并且做了主干.

问题是我们然后对分支进行了一些小的更改,所以我再次重新集成了分支,发生了所有相同的树冲突.解决它们不是问题,但是有很多问题需要一段时间来手动检查和解决它们,我不希望每次进行更改和重新集成时都要经历相同的解决过程.我曾期望SVN认识到该分支已经重新整合一次,并且只是从最后一次重新整合发生的那一点开始合并.

当我打开修订图时,它显示了主干和分支被拆分的点,但它没有显示合并.应该是?

服务器:WinServer2003(R2sp2),VisualSVNServer(1.7.2).客户端:WindowsXP(sp3),我一直在使用TortoiseSVN(1.6.5)来完成所有这些工作,但我也安装了命令行客户端.

我通过确保我的主干是最新的,并使用TortoiseSVN进行合并来进行合并,并在选择对话框时选择"重新整合分支".我将合并深度设置为"工作副本"

我是否错误地处理了这种情况?我应该采取不同的做法吗?

(也许我们的存储库布局有误.我们从trunk中分支,对分支中的新版本进行了所有更改,现在发布是因为我们正在将分支合并回到trunk.也许这是错误的方法,我已经阅读了一些人反过来做的事情,在主干中进行所有更改,并且只在你准备好发布并且分支成为受支持的发行版本时才进行分支)

sbi*_*sbi 10

以下内容来自SVN 本章的本章末尾:

在Subversion 1.5中,一旦从分支到主干完成了--reintegrate合并,分支就不再可用于进一步的工作.它无法正确吸收新的行李箱更换,也无法再次正确地重新集成到行李箱.因此,如果您想继续使用功能分支,我们建议您销毁它,然后从主干中重新创建它

  • 答对了.这正是我一直在寻找的 - 确认我的假设是无效的.我知道那将是那本大坝书,它只是找到了相关的一点.谢谢. (2认同)