how to roll back svn with externals

602 views Asked by At

I'm trying to roll back a subversion repository, that I've made a few errors in.

I would like to roll back the entire repository to a 'good version'.

The normal method to do this is:

svn merge -rHEAD:<good rev> .
svn commit -m 'roll back to <good rev>'

however, as I've got some externals in the repository, subversion won't let me complete the merge operation, without all sorts of errors.

I've managed to actually fix this using the following steps:

svn propedit svn:externals .  # delete all the externals from this file
rm -rf <list of dirs that are marked externally> #Note - Unix RM here, not subversion
svn merge -rHEAD:<good rev> .
svn resolved . # to fix the conflicts that I have on the properties in the current folder
svn commit -m 'completed long winded rollback to earlier rev'

But there has to be a better way? Anyone know of it?

P.S. Please don't say 'don't use externals' unless you've a way of multiple projects editing the same library that is in a state of flux. Externals work for me (mostly).

0

There are 0 answers