You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by SingleShot <mi...@gmail.com> on 2007/03/01 21:58:05 UTC

Need Help Recovering From A Folder Named *

We are at a loss for how to recover from this.

At revision 37, someone managed to commit a folder under our trunk named
"*". This prevented most subversion operations from working (checkout,
update, etc.) - the message was something like "cannot locate path '*'".

Using the TortoiseSVN GUI, we browsed to the * folder in the repository and
deleted it. The result of course was that the entire trunk was deleted! (I
suppose it resulted in the equivalent of rm -rf *) This resulting in
revision 86.

We've tried various techniques to recover from this. One was to merge 86:85,
to at least get our trunk back - this fails because version 85 still has the
* folder, which cancels the merge. Another was to create a new working set
with versions 1:36 & 38-85 to get all changes except for the * folder, then
commit the working set - this fails with a message like "folder xyz does not
exist" - which of course is true since the HEAD has no trunk anymore which
used to contain folder xyz.

Any recommendations in recovering from this would be appreciated.

Thanks.
-- 
View this message in context: http://www.nabble.com/Need-Help-Recovering-From-A-Folder-Named-*-tf3330120.html#a9259513
Sent from the Subversion Users mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: [RFE] Need Help Recovering From A Folder Named *

Posted by SingleShot <mi...@gmail.com>.

Konrad Rosenbaum wrote:
> 
> Ok, this sounds really screwy! 
> 

Agreed. We are still trying to figure out how the "evil one" (as he is now
called) managed to create such an abomination. He really does not know how
it happened and we couldn't figure out a way to repeat it.


Konrad Rosenbaum wrote:
> 
> Try to dump the whole repository (svnadmin dump), then filter out the
> *-path 
> and the delete-trunk-revision (using svndumpfilter). Make sure you use 
> proper shell-quoting while doing this ('tickmarks' instead of "quotes" and 
> a few \backslashes here and there). Load the filtered dump into a fresh 
> repository (DON'T delete or overwrite the old one!!!). Check whether your 
> problems are fixed. If yes: move the new repository to the old location
> and 
> put the old one somewhere else. If no: start with the fresh dump again. 
> 

Thanks for your advice. We will use it if there is a repeat of this. What we
did (prior to receiving your advice) was use "svn copy" to recreate the
trunk without the "*" directory. Not the best solution I know, but it got us
going again. The "*" directory is still in the repository, just at some old
revision. At some point I suppose we should take your advise and try to
clean it out.

Thanks again,

Mike

-- 
View this message in context: http://www.nabble.com/Need-Help-Recovering-From-A-Folder-Named-*-tf3330120.html#a9412310
Sent from the Subversion Users mailing list archive at Nabble.com.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Need Help Recovering From A Folder Named *

Posted by Konrad Rosenbaum <ko...@silmor.de>.
On Thursday 01 March 2007, SingleShot wrote:
> We are at a loss for how to recover from this.
>
> At revision 37, someone managed to commit a folder under our trunk named
> "*". This prevented most subversion operations from working (checkout,
> update, etc.) - the message was something like "cannot locate path '*'".
>
> Using the TortoiseSVN GUI, we browsed to the * folder in the repository
> and deleted it. The result of course was that the entire trunk was
> deleted! (I suppose it resulted in the equivalent of rm -rf *) This
> resulting in revision 86.

Ok, this sounds really screwy! 

Try to dump the whole repository (svnadmin dump), then filter out the *-path 
and the delete-trunk-revision (using svndumpfilter). Make sure you use 
proper shell-quoting while doing this ('tickmarks' instead of "quotes" and 
a few \backslashes here and there). Load the filtered dump into a fresh 
repository (DON'T delete or overwrite the old one!!!). Check whether your 
problems are fixed. If yes: move the new repository to the old location and 
put the old one somewhere else. If no: start with the fresh dump again.

Important rain-dance to prevent this from happening again: Make the guy who 
screwed up the repo bring cake for the whole team.


	Konrad