So today I managed to fsck my SVK depot. In attempting to use mst's Reaction I mistakenly mirrored the repository under //mirrror/reaction. As noticed when i tried the following commands
[ash@bowser perl]$ svk co //mirror/reaction
path /mirror does not exist.
[ash@bowser perl]$ svk co -d /home/ash/perl/reaction
Checkout path '/home/ash/perl/reaction' detached.
[ash@bowser perl]svk mirror -l
Path Source
============================================================
//mirror/your_prefs https://mydomain.com/svn/...
//mirrror/reaction http://code2.0beta.co.uk/reaction/svn
[ash@bowser perl]$ svk mv //mirrror/reaction //mirror/reaction
Waiting for editor...
Committed revision 251.
Committed revision 252.
[ash@bowser perl]$ svk mirror -l
Path Source
============================================================
//mirror/your_prefs https://mydomain.com/svn/...
Oh look at that. Its not there anymore. Hrmmmmm. What happens if we try to mirror it again...
[ash@bowser perl]$ svk mirror //mirror/reaction http://code2.0beta.co.uk/reaction/svn
/mirror/reaction already exists.
Ah, so lets remove it then try again:
[ash@bowser perl]$ svk rm //mirror/reaction
Waiting for editor...
Committed revision 253.
[ash@bowser perl]$ svk co http://code2.0beta.co.uk/reaction/svn
<snip svk output>
Depot path: [//mirror/svn] //mirror/reaction
Filesystem has no item: File not found: revision 253, path '/mirrror/reaction'
[ash@bowser perl]$ svk mirror -l
Path Source
============================================================
//mirror/your_prefs https://mydomain.com/svn/...
Bah. That didn't work either.
[ash@bowser perl]$ svk ls //
mirror/
mirrror/
[ash@bowser perl]$ svk rm //mirrror
//mirrror contains mirror, remove explicitly: //mirrror/reaction
[ash@bowser perl]$ svk rm //mirrror/reaction
no source specificed at /usr/local/share/perl/5.8.7/SVN/Mirror.pm line 52.
To fix this problem, you have to remove the moved mirror from the svm:mirror property on the root of your depot (// in most cases.)
[ash@bowser perl]$ svk pg svm:mirror //
/mirror/your_prefs
/mirrror/reaction
[ash@bowser perl]$ svk ps svm:mirror "/mirror/your_prefs
> " //
Waiting for editor...
Committed revision 254.
[ash@bowser perl]$ svk mirror //mirror/reaction http://code2.0beta.co.uk/reaction/svn
Committed revision 255.
[ash@bowser perl]$ svk sync //mirror/reaction
Syncing http://code2.0beta.co.uk/reaction/svn
Retrieving log information from 1 to 216
Committed revision 256 from revision 1.
...
Committed revision 471 from revision 216.
Huzzah! It's working!. Now to just remove //mirrror:
[ash@bowser perl]$ svk rm //mirrror
Waiting for editor...
Committed revision 472.
Done and dusted.
Tho strangely this bug report seems to imply this problem as fixed in 2005. However the above and [svk-devel] Unable to recover from zombie mirror say otherwise.
Anyone know differently?