我有一个具有以下结构的项目
^/project/trunk
^/project/branches/mybranch
当前 HEAD 是修订版 1048。分支是从 r523 中的主干复制的。主干已合并到 mybranch,结果为 r1048。上的合并信息^/project/branches/mybranch
给出
/project/trunk:523-1047
并且trunk的mergeinfo没有提到任何来自^/project/branches/mybranch
. 实际上,在现实中,主干和分支也同时保存来自分支的合并信息,mybranch
但这些合并信息在两个输出中看起来是完全相同的。
现在我进入我的主干工作副本并尝试发布
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
是一个明显存在于主干和分支中的目录。
我认为这就是可疑之处。如果我通过查看 mybranch/src 的合并信息,svn pg svn:mergeinfo ^/project/branches/mybranch/src@HEAD
我什么也得不到。但是,如果我查看trunk/src(svn pg svn:mergeinfo ^/project/trunk/src@HEAD
),我会得到
/project/branches/mybranch/src:784
所以似乎有人在那里从树枝到树干进行了樱桃采摘。但是,这不会出现在中继文件夹本身中。
这就是问题所在吗?最重要的是:我该如何治愈它?