我已经研究过这几个星期了,所以如果这已经得到回答,我会道歉。
我的主要问题是在执行持续合并后合并。
我有/trunk
,我从中创建了我的分支/branches/featureone
。然后开发人员继续在所述分支内开发。
在此开发过程中,团队的其他成员继续在/trunk
内进行小错误修复。分支每天都会根据主干的变化进行更新。我们来到项目的最后,现在是时候合并回主干了。这是问题发生的地方。
在这个特定的例子中,从/trunk
删除了许多旧的duff文件。这与/branches/featureone
成功合并。因此,trunk和branch都删除了这些文件。
我使用TortoiseSVN将/branches/featureone
合并到/trunk
并使用以下设置:
使用测试合并运行,突然删除会造成大量冲突。删除传入删除。任何已添加的新文件,带有传入添加的文件添加也会发生这种情况。
我的问题是如何解决这个问题?不是SVN意味着要自动解决这个问题吗?我可以继续并手动选择不是从主干合并的所有修订,但这似乎是错误的。
我在TortoiseSVN 1.8.4和Subversion Edge 4.0.4(Subversion 1.8.5)上运行。
我们的SVN结构通常如下:
\---svn
+---branches
| +---featureone
| \---featuretwo
+---production
\---trunk
我们没有版本,所有客户都拥有相同的代码库(虽然将来可能会有所改变)。
任何帮助将不胜感激。
答案 0 :(得分:1)
您的方案看起来很像需要使用reintegrate选项进行合并。 根据您的屏幕截图,您尝试合并一组修订而不是整个树。 TortoiseSVN文档说:
如果功能需要更长时间并且您需要考虑中继的更改,则需要保持分支同步。这只是意味着定期将树干更改合并到分支中,以便分支包含所有树干更改和新功能。同步过程使用合并一系列修订。 当功能完成后,您可以使用重新整合分支或合并两个不同的树将其合并回主干。 https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-merge.html