4

我正在使用 subclipse 将主干中的更改合并到一个分支中,并且在“最佳实践”步骤中,有一个通知表明工作副本不在单个修订版中。包资源管理器中的所有文件或文件夹都没有脏指示符,并且(之前已经经历过)即使在进行更新之后,版本号似乎都没有改变。subclipse 具体看什么来生成此通知?有什么我也可以从命令行运行来证实这一点吗?

4

2 回答 2

8

这基本上意味着您有一个非常正常和常见的“混合修订工作副本”。如果你谷歌它,你会发现很多解释。我多年前写的一篇博文是最热门的:

http://markphip.blogspot.com/2006/12/mixed-revision-working-copies.html

如果您的工作副本在一个统一的修订版中,Subversion 合并会更好地工作。所以只需运行更新。如果您允许,合并向导将为您执行此操作。

于 2012-11-30T13:33:22.920 回答
1

在 subclipse 之外,在纯 Subversion 术语中:

您的 WC 可能处于清洁状态(没有本地修改),但是 - 处于混合状态。当树的一部分更新为修订版时,将出现混合工作副本,与“主要”不同

重现步骤

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 的一部分

于 2012-11-30T04:44:43.863 回答