单一版本的工作副本在Subversion中出现问题

4
我正在使用Subclipse将主干的更改合并到分支中,在“最佳实践”步骤中,会出现一个通知,指出工作副本不在单个修订版上。包资源管理器中的文件或文件夹都没有脏标记,并且(之前已经经历过此情况)即使进行更新后,似乎也没有更改任何版本号。Subclipse具体查看什么以生成此通知?我是否也可以从命令行运行某些内容来证实这一点?
2个回答

8
这基本上意味着您有一个“混合修订工作副本”,这非常正常和常见。如果您 Google 它,您会找到很多解释。我在很多年前写的博客文章是排名第一的:http://markphip.blogspot.com/2006/12/mixed-revision-working-copies.html
如果您的工作副本处于单个统一的修订版本中,Subversion 合并将运行得更顺畅。所以只需运行更新。如果您允许它,合并向导将为您完成此操作。

1

除了Subclipse之外,在纯Subversion术语中:

你的工作副本可能处于干净状态(没有本地修改),但是-在混合状态下。当树的一部分更新到与“主”不同的版本时,将出现混合工作副本。

复现步骤

svn co http://mayorat.ursinecorner.ru:8088/svn/Hello/
A    Hello\trunk
...
Checked out revision 34.

cd trunk

svn up -r 30
Updating '.':
...
Updated to revision 30.

cd ..\..

subwcrev Hello
SubWCRev: 'z:\Hello'
Last committed at revision 28
Mixed revision range 30:34

“混合修订范围”是针对您和您的情况的警告。我无法回忆起这个检查以及如何使用纯svn客户端进行操作:在构建任务中始终使用subwcrev。
对于干净的工作副本(在主干上执行svn up),subwcrev输出。
subwcrev Hello
SubWCRev: 'z:\Hello'
Last committed at revision 34
Updated to revision 34

SubWCRev是TortoiseSVN的一部分


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接