【发布时间】:2018-01-19 07:17:52
【问题描述】:
虽然这里(例如,SVN - Reintegration Merge error: "must be ancestrally related")和网络上有几个类似的问题,但我无法弄清楚为什么svn mergeinfo <file> 会在我的所有 SVN 存储库中导致错误。与我发现的所有其他问答相比,我实际上能够成功执行svn merge。例如,撤消对pom.xmlfile 的先前提交:
svn merge -r 17409:17408 pom.xml
--- Reverse-merging r17409 into 'pom.xml':
U pom.xml
--- Recording mergeinfo for reverse merge of r17409 into 'pom.xml':
U pom.xml
--- Eliding mergeinfo from 'pom.xml':
U pom.xml
但是,当我执行svn mergeinfo 时,出现以下错误:
svn: E195016: 'https://../trunk/MyProject/pom.xml@50446' must be ancestrally related to
'https://../trunk/MyProject@50446'
在此示例中,50446 是当前的头版本号,我尝试过的每个文件都出现相同的错误。只有当我在顶级目录本身上执行 mergeinfo 命令时,它才有效:
svn mergeinfo .
youngest common ancestor
| last full merge
| | tip of branch
| | | repository path
50446 50446
| |
-------| |------------ ../trunk/MyProject
\
\
--| |------------ ../trunk/MyProject
|
50446
更奇怪的是,我没有找到任何 mergeinfo 属性集。 svn propget svn:mergeinfo --recursive 或 svn propget svn:mergeinfo --depth=infinity 之类的命令不输出任何内容并成功返回状态码 0。
有谁知道如何将我们的文件修复为与它们所在的项目再次“祖先相关”?
【问题讨论】:
标签: svn svn-merge svn-mergeinfo