tags:

views:

32

answers:

3

I have a svn working copy which I attempted to reverse merge a couple of recent revisions into. I cancelled the merge before it completed as I changed my mind. Now my working copy has a couple of thousand "changes" from updates to the ancestry related properties on most of the files. I have about 10 files with real code changes mixed in which I don't want to have to seperate out by hand.

Is there a way for me to revert all of the property changes without affecting the content changes?

+1  A: 

I would just copy/backup the 10 files with the real code change somewhere else, and just svn revert -R the whole project, then copy back the 10 files.

ryanprayogo
+1  A: 

I think if you use the '--depth empty' option you'll revert changes only to paths explicitly specified on the command line so if you specify all of the directories that have property changes but NONE of the files whose contents changes you want to keep.

e.g. if you have the directory 'foo' with unwanted property changes but the file 'bar' inside 'foo', the following should preserve the mods to 'bar' but revert the property changes on 'foo'.

$svn revert --depth empty foo
TheJuice
A: 

Turns out that Tortoise SVN can do this really nicely. In the commit dialog you can sort the "modified" files by "text status" or "properties status". I simply sorted by text status and then reverted all the "modified" files which had "normal" "text status".

mchr