[英]svn merge with --reintegrate complains about missing ranges but mergeinfo seems correct
我有一个具有以下结构的项目
^/project/trunk
^/project/branches/mybranch
当前HEAD是修订版1048.分支是从r523中的trunk复制的。 trunk已合并到mybranch,结果为r1048。 ^/project/branches/mybranch
给出
/project/trunk:523-1047
并且trunk的mergeinfo没有提及^/project/branches/mybranch
任何记录。 实际上实际上,主干和分支也从与mybranch
平行的分支中保持mergeinfos,但是这两个mergeinfos在两个输出中看起来完全相同。
现在我进入我的干线工作副本并尝试发布
svn merge --reintegrate ^/project/branches/myproject
我收到一条错误消息:
svn: Reintegrate can only be used if revisions 523 through 1048 were previously merged from file:///home/svn/project/trunk to the reintegrate source, but this is not the case:
project/branches/mybranch/src
Missing ranges: /project/trunk/src:523-1047
这很奇怪,因为我的分支文件夹上的mergeinfo告诉我523-1047已经从主干到分支正确合并。 这个子文件夹的处理是什么? src
是一个显然存在于trunk和branch中的目录。
我认为这是有些可疑的地方。 如果我通过svn pg svn:mergeinfo ^/project/branches/mybranch/src@HEAD
查看mybranch / src的mergeinfo svn pg svn:mergeinfo ^/project/branches/mybranch/src@HEAD
我什么都没得到。 如果我看一下trunk / src( svn pg svn:mergeinfo ^/project/trunk/src@HEAD
)我得到了
/project/branches/mybranch/src:784
所以似乎有人在那里从一个分支到另一个分支做了一个樱桃挑选。 但是,这不会出现在trunk文件夹中。
那是麻烦所在吗? 最重要的是:我该怎样治愈它?
那是麻烦所在吗?
是的,确切地说 - 以后合并子树总是混淆重新融合
最重要的是:我该怎样治愈它?
从/ project / trunk / src中删除mergeinfo
以下是您可能想要查看的非常相似的主题:
特别是Paul Whipp的 回答在我遇到同样的问题并且不想删除mergeinfo时给了我很多帮助,因为这听起来像是一种解决方法而不是“真正的”修复。
简而言之:尝试手动合并特定文件/文件夹的缺失信息(正如svn建议的那样)。 对我来说就像一个魅力。
请参阅Pauls答案以获取相应的代码示例等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.