On Wed, Feb 29, 2012 at 04:07:10PM +0100, Neels J Hofmeyr wrote: > My impression was that svn tries to leave unversioned data around until the > user takes care of it (as with 'svn delete dir'). That's what I thought > obstructed states are for.
Revert is a bit of a fine line. It is a command that is supposed to throw away local changes. So by definition is it disruptive and dangerous. However, I agree with the sentiment that revert should not delete unversioned data from disk. > Well, if you guys all agree that revert should be this aggressive, fine, > won't push it. IIRC stsp made revert kill locally added files, e.g. for > undoing a merge. That's where revert is also aggressive... fair enough. Well, what I did was making revert clean up copies (with or without local mods) on grounds that the copy source exists in the repository and any local modifications to the copy are modifications made to versioned nodes. Previously such copies were left behind on disk as unversioned nodes after 'revert' and often had to be cleaned up manually (e.g. before repeating a merge after 'revert -R'). Newly added nodes are still left unversioned after reverting the addition. No version of this data was ever committed, so users should get rid of it themselves.