Как восстановить заблокированные каталоги в рабочих копиях - PullRequest
11 голосов
/ 17 марта 2011

У меня есть приложение, которое хранит свои данные в дереве каталогов.

Теперь я хочу сохранить этот каталог под контролем версий с помощью svn.

Однако проблема в том, что этоприложение время от времени удаляет и воссоздает некоторые каталоги в этом дереве, что приводит к потере соответствующих подкаталогов .svn, и TortoiseSVN затем громко жалуется на заблокированные каталоги.

Есть ли какая-либо специальная опция, скрипт (cygwinпакет, windows cmd, python ...) или программа, которая может восстановить эти рабочие копии?В настоящее время я использую инструмент синхронизации каталогов для повторного добавления потерянных файлов .svn из второй рабочей копии, но это очень громоздко.

Спасибо!

Ответы [ 4 ]

15 голосов
/ 02 августа 2013

Я переименовал конфликтующую папку и запустил обновление SVN, чтобы восстановить папку из SVN.

После сравнения с моим любимым инструментом сравнения (Синхронизация каталогов в Total Commander) я вижу, что единственное отличие заключалось в том, чтов конфликтующей папке была папка .svn.

4 голосов
/ 17 марта 2011

Извините, но вы не можете восстановить то, что потеряно.

Папки исчезли, и их нельзя просто воссоздать из воздуха. Единственный способ вернуть их обратно - это запустить обновление, но для этого необходимо сначала удалить все папки, поскольку обновление не перезаписывает существующие файлы.

0 голосов
/ 21 сентября 2017

Одной из причин создания препятствующих каталогов при фиксации SVN может быть то, что IDE, например Visual Studio, удаляет и воссоздает выходные каталоги, тем самым удаляя папки .svn. Поэтому создайте этот проект VS где-нибудь еще, а затем перезапишите исходное извлеченное место, чтобы сохранить папки .svn. Затем добавьте SVN и подтвердите SVN.

0 голосов
/ 24 января 2017

Моя проблема была с Visual SVN в VS, он потерял свои привязки, хотя все было хорошо, когда я в последний раз совершал.Удалил папку .svn в корневой папке проекта на диске и обновил.Все снова нормализовалось, как в ответе Энди выше.

...