Как восстановить случайно удаленную папку в репозитории svn

Я знаю, как вернуться к определенной ревизии папки, используя следующие инструкции:

http://aralbalkan.com/1381

тем не менее, я удалил всю папку и хочу получить эту папку обратно, не возвращая остальную часть репозитория.

Я попытался воссоздать папку, а затем объединить изменения обратно, но svn знает мой трюк и понимает, что это новая папка.

Как мне это сделать?

3 ответов


самый простой способ, вероятно,svn копировать дерево, которое вы хотите, из редакции, где он последний раз существовал:

svn copy src@rev dest

посмотреть Книги О Subversion для сведения.


вы можете проверить новую рабочую копию, а затем выполнить экспорт интересующей вас папки. После экспорта папки в ней не будет метаданных subversion. Затем вы можете поместить папку в рабочую копию, из которой она была удалена.

удачи.


если вы совершили изменения после воссоздания папки, возможно, у вас есть та же проблема, что и у меня:

Я потерял свою историю для файлов. Тогда Я ... --4--> папка снова, и при выполнении

svn cp ^/path/to/directory@revisionNumber /path/to/directory 

я получил эту ошибку:

svn: path "htttp://.../path/to/directory" not found for revision "revisionNumber".

в этом случае вы можете использовать вспомогательную папку (~/tmp/ и) делать

cd ~/tmp; svn co -r revisionNumber /path/to/directory 

он создаст папку ~ / tmp / directory / со всеми содержащимися в ней файлами. предположим, что место где вы удалили каталог / location/of/my/trunk/path / to/

а затем выдать

 cd location/of/my/trunk/path/; svn copy ~/tmp/directory/ to/

от этого пути к пути он должен быть в вашем дереве.