Возврат к предыдущей редакции с помощью TortoiseSVN

какой самый простой способ вернуть мою рабочую копию до предыдущей версии с помощью Windows в TortoiseSVN?

Я не нашел команду "найти", чтобы сделать это быстро.

6 ответов


есть несколько способов сделать это. но не просто обновить до более ранней версии как предложил здесь.

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

  1. Выберите файл или папку, в которой необходимо отменить изменения. Если хочешь ... отменить все изменения, это должна быть папка верхнего уровня.
  2. выберите TortoiseSVN → показать журнал, чтобы отобразить список ревизий. Возможно, вам придется использовать Show All или Next 100 чтобы показать интересующую вас ревизию(ы).
  3. выберите ревизию, которую вы хотите вернуть. Если вы хотите отменить ряд ревизий, выберите первую и удерживайте Shift при выборе последнего. Обратите внимание, что для нескольких ревизий диапазон должен быть непрерывным без пробелов. Щелкните правой кнопкой мыши на выбранная редакция(ы), затем выберите Context MenuRevert изменения из этой ревизии.
  4. или если вы хотите сделать более раннюю ревизию новой редакцией HEAD, щелкните правой кнопкой мыши выбранную ревизию, затем выберите Context MenuRevert to this revision. Это приведет к отмене всех изменений после выбранной ревизии.

вы вернули изменения в рабочей копии. Проверьте результаты, затем зафиксируйте изменения.

все решения объясняются в "Как Это Сделать И...- часть документов TortoiseSVN.


я использовал те же инструкции Stefan использовал, взяты из сайт Черепаха.

но важно нажать COMMIT сразу после. Я сходил с ума, пока не понял это.

Если вам нужно сделать более старую ревизию вашей ревизии сделать следующее:

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

  2. выберите TortoiseSVN → показать журнал, чтобы отобразить список ревизий. Вам может потребоваться использовать Show All или Next 100, чтобы показать интересующую вас ревизию(ы).

  3. щелкните правой кнопкой мыши на выбранной редакции, затем выберите контекстное меню → вернуться к этой редакции. Это приведет к отмене всех изменений после выбранной ревизии.

  4. сделать коммит.


команда Revert в контекстном меню игнорирует ваши изменения и возвращает рабочую копию в предыдущее состояние. Вы также можете выбрать желаемую ревизию, отличную от" Head", когда вы" CheckOut " из репозитория.


щелкните правой кнопкой мыши на папке, которая находится под управлением SVN, перейдите в в TortoiseSVNпоказать журнал. Запишите ревизию, к которой вы хотите вернуться, а затем перейдите в в TortoiseSVNобновить до ревизии....

Enter image description here


в контекстном меню TortoiseSVN выберите "обновить до редакции", введите желаемый номер редакции и вуаля :)


вот еще один метод, который неортодоксален, но работает*.

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

вот что мы сделали:

после проверки того, что новое требование ничего не нарушает при использовании ревизии перед моей регистрацией, я сделал копию рабочего каталога, содержащего новый код. Затем я удалил все в рабочем каталоге и проверил ревизию, которую я хотел. Затем я удалил все файлы, которые я только что проверил, и скопировал в файлы из рабочая копия. Затем я совершил это изменение, эффективно уничтожив разрывное изменение из репозитория и получив производственный код в качестве главной ревизии. У нас все еще есть разрывное изменение, но оно больше не в головном пересмотре, поэтому мы можем двигаться вперед к производству.

*Я не рекомендую этот метод, но если вы окажетесь в подобной ситуации, это выход, что это не слишком болезненно.