Откат svn переместить / переименовать - PullRequest
5 голосов
/ 09 ноября 2010

Я скучаю по mv папке в моем svn стволе вместо того, чтобы разветвлять ее. Я мог бы просто вернуться назад, но боюсь, что потеряю историю. Как это лучше всего отменить?

Редактировать: Мне должно быть ясно, что я сделал перемещение в хранилище, а не в своей рабочей копии, поэтому это был автоматический коммит.

Ответы [ 4 ]

4 голосов
/ 09 ноября 2010

См. Руководство по Subversion о отмене изменений , чтобы отменить ваших ошибочных изменений.

Вы можете использовать SVN Merge, чтобы «отменить» изменить в вашей рабочей копии, а затем совершить локальную модификацию репозиторий. Все, что вам нужно сделать, это указать обратную разницу. (Вы можете сделать это, указав --revision 303: 302 или эквивалентным -303.)

svn merge -c -303 http://svn.example.com/repos/calc/trunk
3 голосов
/ 09 ноября 2010

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

Извлечь здесь и здесь для деталей.

1 голос
/ 09 ноября 2010

Если вы не совершали это:

svn revert PATH
0 голосов
/ 01 августа 2017

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

рассеянный ход

     svn mv -m 'move it!' \
         http://svn.example.com/repos/calc/trunk \
         http://svn.example.com/repos/calc/foo

Проверьте журнал на наличие последней версии перед переездом

    svn log http://svn.example.com/repos/calc/trunk

...

    ------------------------------------------------------------------------
    r17610 | john.doe | 2017-08-01 11:02:43 -0300 (tue, 01 aug 2017) | 1 line

    move it!
    ------------------------------------------------------------------------
    r17581 | john.doe | 2017-07-31 17:42:57 -0300 (mon, 31 jul 2017) | 1 line

    fix bug
    ------------------------------------------------------------------------

Скопируйте последнюю хорошую версию 17581 в ГОЛОВУ

 svn mv -m 'fix absently minded move' \
     http://svn.example.com/repos/calc/trunk@17581 \
     http://svn.example.com/repos/calc/trunk

Это полностью сохранит вашу историю (включая рассеянный ход)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...