2

我有一个需要从主干更新的项目(Foo)和一个分支(Bar)。如果 svn merge 在顶层运行,它会从 197894 开始合并,但在该子目录中的合并从 204284 开始,这是首选。

IE:

$> svn merge URL:/trunk .

---->同时到达巴兹时会发生很多冲突:

$> cd Baz
$> svn merge URL:/branch/Bar/Baz .

---> 不错!

有没有办法修复或告诉 mergeinfo 道具它的当前版本是从哪里开始合并(特别是当它从顶级目录开始时)。

请注意,为了让它工作,子目录是通过 svn delete/svn copy 从主干重新创建的。也许某些合并信息丢失/令人困惑?然而,当时的想法是,这将使它成为最新的 wrt 主干。

这是svn告诉我的:

树干 ...

svn info https://corp.com/svn/Foo/trunk/Baz
Last Changed Rev: 204286
svn propget svn:mergeinfo https://corp.com/svn/Foo/trunk/Baz
/Foo/trunk/Baz:197626-197892

分支 ...

svn info https://corp.com/svn/Foo/branch/Bar/Baz
Last Changed Rev: 204284      # 2 behind trunk
svn propget svn:mergeinfo https://corp.com/svn/Foo/branch/Bar
/Foo/trunk:197297-204098
svn propget svn:mergeinfo https://corp.com/svn/Foo/branch/Bar/Baz
/Foo/trunk/Baz:197626-197892   # this looks suspicious !?
4

1 回答 1

0
svn info https://corp.com/svn/Foo/branch/Bar/Baz
Last Changed Rev: 204284      # 2 behind trunk

我怀疑svn info正在报告包含对 Baz 分支进行更改的最新修订。请记住,修订号是存储库范围内的,而不是每个分支。其他分支机构可能正在发生类似的事情。

于 2012-09-27T14:08:30.953 回答