SVN - 重新整合合并错误:"必须与祖先相关"

Sei*_*bar 62 svn tortoisesvn

使用TortoiseSVN - 当我使用Test Merge时,我收到错误" http:// mysvnserver/svn/main/branches/ProjectA必须与http:// mysvnserver/svn/main/trunk/ProjectB有关. "

我该怎么做才能解决这个问题?

小智 70

我刚刚遇到了类似的问题,想要添加我遇到的问题和解决方案.分支是由树干的SUBFOLDER而不是整棵树制成的.因此,当我试图重新融入时,我的等级制度不匹配.只需将整合重建为我的主干WD的正确子文件夹,就可以继续进行.

希望这可能有助于打击此Q/A的人.:)

  • 这也是我的问题.我有几个项目的解决方案.下拉列表的默认值具有"低级别"条目,而不是我需要与"工作副本"条目的顶级对齐.我删除了URL的尾端,以便它与我的Subversion存储库的顶级URL匹配. (3认同)
  • 完美 - 这为我节省了"手工"合并:) (2认同)

Leo*_*das 17

让我猜一下:这些项目没有关系?查看历史,如果其中一个曾经分支或不分支.

立即解决方案:每手合并或尝试使用"svn merge --ignore-ancestry"命令行

  • 当我使用 --ignore-ancestry 时出现此错误。svn:E200004:忽略合并信息时无法自动合并 (2认同)

jev*_*von 8

正如davebytes所提到的,当你trunk\X进入分支时会发生这个问题branches\Y,但随后会X进入一个新的文件夹Z,即trunk\X\Z.

如果你只是尝试合并在一个变化branches\Ytrunk\X,你会得到很多的冲突; 如果你只是尝试合并branches\Ytrunk\X\Z,你将看到"祖先相关的"错误.

但是,SVN手册描述了潜在的问题:svn merge应该真的被调用svn diff-and-apply.在这种情况下,您应该尝试描述的是,您正在尝试总结从r100到r200发生的更改branches\Y,并将这些更改应用于trunk\X\Z\.

在TortoiseSVN中,这是将两个不同的树场景合并到您的本地工作副本trunk\X\Z,其中r100 branches\Y设置为"from",r200 branches\Y设置为"to".


Mem*_*sen 5

由于以下原因,我们遇到了这个问题:

使用TortoiseSVN的repo浏览器创建了一个文件夹,并将其用作分支.之后我们尝试将手动创建的文件夹合并到工作文件夹中.

解决方案是:不要首先手动创建分支,而是使用TortoiseSVN - > Branch/tag ...选项创建分支.

希望这会有所帮助.

  • 这实际上并没有说明如何修复它.只是如何避免它.这确实是一个有价值的信息,但可能更完整. (7认同)