I am trying to clean up this old svn repository. The project repo is very simple:
/trunk/
used to be the main branch, it has been untouched since rev 531./branches/Version2
is the new main branch, at rev 1300. It's essentially the master branch now; everyone works from this branch. It is merged up-to-date with trunk
.We want to reintegrate Version2
back to trunk
.
When I do:
svn merge --reintegrate ..\branches\Version2
I keep having problems. Either SVN crashes, or it errors with "truncated html response" after merging only a couple of the thousands of files.
Honestly, this is such a simple merge (literally naively replacing trunk
with Version2
), is there some other way to do this that works around the failing merge? Am I missing something obvious?
Short of a dump-reload cycle, why can't you simply svn delete trunk
and then svn move branches/Version2 trunk
?
Also, @LazyBadger's comment above seems to be a perfectly valid alternative, but if you have files in trunk
that were svn delete
d in the Version2
branch, you'd still have these present after the manual sync he suggested. Even if you manually delete (i.e Windows / Linux / Mac delete) everything in trunk
first, then manually sync with the Version2
branch, you'd still have to remember to "mark as deleted" the files that SVN will now report as missing.
For files svn add
ed in Version2
, post-manual-sync to trunk
, SVN will report them as being non-versioned, and you'd have to remember to svn add
them.
There have been times where I was forced to do this sort of thing, and it isn't pretty.