SVN中无法修复的混合修订工作副本

Jas*_*n S 18 svn merge svn-externals

我有一个干净的分支结账(没有修改),但是我无法将主干重新集成到我的分支中,因为SVN认为我有一个混合版本的工作副本:

c:\myproject> svnversion
2045:2047
Run Code Online (Sandbox Code Playgroud)

问题似乎是由我的一个外部因素造成的:

c:\myproject> svn propget svn:externals tools
-r1448 ^/tools/external/trunk/gandalf/bin gandalf/bin
-r1508 ^/tools/external/trunk/gandalf/include gandalf/include
-r1508 ^/tools/external/trunk/gandalf/lib gandalf/lib
-r1428 ^/tools/external/trunk/jsdb jsdb
-r2045 ^/tools/external/trunk/java/lib/jing.jar jing.jar
Run Code Online (Sandbox Code Playgroud)

您会注意到它们都是目录外部而不是单文件外部,除了jing.jar,这与"svnversion"认为是我工作副本的最低范围的版本相同,这应该是干净的结帐r2047.

我该如何解决这个问题(除了不使用单文件外部)?

我已经尝试过更新,新的签出和svn清理,它仍然有这个问题.我正在使用TortoiseSVN 1.6.12

tan*_*orm 20

看起来你不是唯一有这个问题的人.

修复是使用相当于 svn update --ignore-externals

请参阅此处: 在SVN中重新集成外部分支失败


Tre*_*kaz 6

我找到了一个不同的解决方案--allow-mixed-revisions

svn merge -c7777 https://repo/app/branches/1.0 . --allow-mixed-revisions
Run Code Online (Sandbox Code Playgroud)

即使我进行了全新的结帐,更新时忽略外部因素也不能解决我的问题。