Matthew Setter
Matthew Setter

Reputation: 2447

SVN Properties change on working copy checkout

I have an odd one that I've not been able to sort out yet. When I checkout a branch from SVN, I'm regularly seeing multiple, unrelated files, with SVN property changes, either directly after checkout, or after I change one or two files.

During the course of work on the branch, I change a few files; those changes are shown in 'svn stat' as normal. However other files have properties changed - nothing more. Anyone seen this before? Anyone have ideas?

Matt

Upvotes: 1

Views: 874

Answers (2)

David W.
David W.

Reputation: 107090

Subversion will change the value of svn:mergeinfo even if the file being merged itself doesn't change or there appears to be no differences between the files. The svn:mergeinfo is used to track where merges were done, and not whether a merge resulted in a change. That way, Subversion can say This revision on this branch were already merged, so they shouldn't be merged again.

I'm not fond of merge tracking through this property. An svn merge can report hundreds of files being changed, but a closer examination shows only a few were changed. The rest merely had their svn:mergeinfo property changed.

Sometimes developers purposefully revert back files that only had their svn:mergeinfo property changed, and just checkin the files that actually had their content changed. This, of course, results in even more files needing merging the next time around. Sometimes developers will clean up svn:mergeinfowhich really messes things up.

svn:mergeinfo really causes a lot of confusion. In fact, sometimes I wish there was a switch where we could turn off merge tracking. There are some sites that are more comfortable tracking their own merges.

However, this is what we have, so I'll live with it, and train developers on it.

Upvotes: 2

Frank Schmitt
Frank Schmitt

Reputation: 30845

Someone might have merged from another branch to "your" branch. SVN tracks which revisions have been merged to a branch, and updates the svn:mergeinfo property accordingly

(AFAIK, this only applies to Subverson 1.5 or higher).

Upvotes: 1

Related Questions