我有一个奇怪的,我还没能解决。当我从SVN签出分支时,我经常会在结账后直接看到多个不相关的文件 SVN属性更改,或者在我更改一个或两个文件后。
在分支机构的工作过程中,我更改了一些文件;这些变化在'svn stat'中显示为正常。但是其他文件的属性已更改 - 仅此而已。有人见过这个吗?有人有想法吗?
马特
答案 0 :(得分:2)
即使正在合并的文件没有改变,或者文件之间似乎没有差异,Subversion也会更改svn:mergeinfo
的值。 svn:mergeinfo
用于跟踪合并的位置,而不是合并是否导致更改。这样,Subversion可以说这个分支上的这个版本已经合并,所以不应该再次合并。
我不喜欢通过这个属性进行合并跟踪。 svn merge
可以报告数百个正在更改的文件,但仔细检查显示只有少数文件被更改。其余的只是改变了他们的svn:mergeinfo
属性。
有时开发人员有目的地还原返回仅更改了svn:mergeinfo
属性的文件,并只检查实际更改了内容的文件。当然,这会导致下一次需要合并的文件更多。有时候开发人员会清理 svn:mergeinfo
,这会让事情变得混乱。
svn:mergeinfo
确实引起了很多混乱。事实上,有时我希望有一个开关,我们可以关闭合并跟踪。有些网站更适合跟踪自己的合并。
然而,这就是我们所拥有的,所以我会接受它,并培训开发人员。
答案 1 :(得分:1)
有人可能已经从另一个分支合并到“您的”分支。 SVN跟踪哪些修订已合并到分支,并相应地更新svn:mergeinfo属性
(AFAIK,这仅适用于Subverson 1.5或更高版本)。