I wanted to reverse-merge some accidental changes on a subdirectory on my branch and svn really confuses me in this. Is the below behavior from subversion intended or have I stubled on a bug?
I wanted to reverse-merge revision 1000 on all the files in the directory "sub/dir", below illustrated with only one file. wcroot> svn diff --summarize -c 1000 sub/dir M sub/dir/foobar.txt wcroot> svn merge -c -1000 sub/dir --- Recording mergeinfo for reverse merge of r1000 into '.': U . So the file sub/dir/foobar.txt is not reverse-merged (and the merge info is elided even though the output does not say so) I tried a few different versions of this with e.g. -r 1000:999 with identical results. Then I did the following, which I thought would be more of the same: wcroot> cd foo/bar wcroot/foo/bar> svn merge -c -1000 . --- Reverse-merging r1000 into '.': U sub/dir/foobar.txt --- Recording mergeinfo for reverse merge of r1000 into '.': G . --- Eliding mergeinfo from '.': U . So now it does what I wanted to. Is it intended that merge should do different things if I use "." or "sub/dir" as my WCTARGET? I find it confusing and it was mostly luck that I stumbled on the right solution. "svn help merge" does not seem to indicate that these two use cases should be any different, but I may misread it. Btw, this was done with "svn, version 1.9.5 (r1770682)" TIA, Chris