Восстановить SVN после потери данных - PullRequest
2 голосов
/ 28 января 2011

Мой коллега и я использовали SVN для нашего проекта. Мы работали в одной и той же ветке последние несколько недель, при необходимости добавляя и объединяя файлы. Три дня назад наш сервер SVN умер, и мы потеряли все наши данные. Я (глупо) не делал регулярных резервных копий на отдельный сервер, поэтому лучшая резервная копия, которую я имею, - это 200 ревизий позади того места, где мы находимся.

Есть ли какой-нибудь способ, чтобы наши проверенные копии были объединены правильно и обратно в SVN?

Меня не волнует история изменений. Я просто хочу убедиться, что весь мой код правильно объединен с кодом моего коллеги.

Ответы [ 2 ]

2 голосов
/ 28 января 2011

Первый шаг, который я бы сделал, - введите команду svn diff на компьютере, на котором установлена ​​более ранняя версия рабочей копии.Он создает файл diff, содержащий изменения текущей версии, относящиеся к последней проверке.

Вторая копия извлеченной структуры на компьютере, на котором извлечена новая версия, и отключение его от аварийного хранилищаудалить все каталоги метаданных .svn).Затем зарегистрируйте его в новом чистом репозитории.

Теперь возьмите ранее созданный файл diff и примените его к только что зарегистрированной рабочей копии.Надеюсь, вы получите только небольшие конфликты, которые могут быть легко решены вами или вашим коллегой.Если все проблемы решены, отметьте это.

Примечание. Эти инструкции предназначены для создания полностью нового хранилища.Устаревшая резервная копия не была рассмотрена.

1 голос
/ 28 января 2011

Это должно помочь:

svnadmin recover <svn path>

ИЛИ

svnadmin verify <svn path>
...