VisualSVN Как откатить номер ревизии?

В компании, в которой я работаю, произошел серьезный сбой сервера. Во время этого сбоя репозиторий SVN был утерян. Но надежда еще есть! У нас есть старая резервная копия репозитория, которую мне удалось успешно восстановить с помощью VisualSVN.

Проблема, с которой я столкнулся сейчас, заключается в том, что я не могу обновить / зафиксировать папки извлечения до сбоя. Причина этой проблемы в следующем: локальная папка имеет номер версии 2361, а сам репозиторий содержит номер версии 2290, что является более старым.

Есть ли способ справиться с этой проблемой? Могу ли я каким-то образом изменить номера ревизий в локальной или серверной копии?

Несколько моментов:

  • Я использую TortoiseSVN 1.6.6.
  • Я могу проверить папки из репо, и соединение активно.
  • Я выбрал одну из своих папок и использовал для нее параметр Переместить. Это помогло мне увидеть, что с номером версии что-то не так.
  • Я немного поэкспериментировал с опцией слияния, но теперь это привело меня к чему-то особенному. (Я открыт для предложений)

Спасибо за уделенное время,

Ита


person Ita    schedule 16.05.2010    source источник


Ответы (2)


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

Вы просто не можете вернуть номер версии. Ваша текущая рабочая копия потенциально содержит изменения, которых нет в старой резервной копии репозитория, и рабочая копия не рассматривает их как «отличные от репозитория».

Поскольку ваш репозиторий был утерян, не было и шанса согласовать вашу текущую рабочую копию.

person Dave Van den Eynde    schedule 16.05.2010
comment
Я надеялся, что смогу избежать этого решения, но, похоже, это было не так уж плохо. Я использовал эту строку: FOR /F tokens=* %%G IN ('DIR /B /AD /S .svn') DO RMDIR /S /Q %%G в пакетном файле чтобы помочь мне избавиться от старых папок .svn, которые находились в папках, которые мне нужно было переместить. Спасибо за вашу помощь :) - person Ita; 17.05.2010
comment
О, я не имел в виду, что вам нужно «переехать», но это определенно подход. Я бы использовал Beyond Compare или что-то подобное, чтобы получить представление о том, что именно я делаю. Но если все получилось, сил тебе больше! - person Dave Van den Eynde; 17.05.2010

Извлечь новейшую версию восстановленной резервной копии в рабочую копию. сделайте SVN-экспорт и старую рабочую копию и просто скопируйте все файлы/папки в ранее извлечённую рабочую копию. Затем добавьте svn, если необходимо, и зафиксируйте. Это должно суммировать все изменения.

person khmarbaise    schedule 16.05.2010
comment
Возможно, текущая рабочая копия содержит еще не зафиксированные изменения. - person Dave Van den Eynde; 16.05.2010
comment
Да, это именно идея моих предложений, потому что она будет принимать все, что не проверено и т. д. (возможно, вам нужно проверить опцию --force команды экспорта). - person khmarbaise; 17.05.2010