Подтвердить что ты не робот

TortoiseSVN - "вернуть изменения из этой версии" и "вернуться к этой ревизии"

Ссылка:

http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html

описывает два способа отката каталога SVN после ошибочного фиксации. В чем разница между двумя параметрами

Revert changes from this revision
Revert to this revision

В качестве теста я добавил файл, откат с помощью "Отменить изменения из этой ревизии" и сделал тот же процесс для "Вернуть эту ревизию", и нет никакой разницы с состоянием журнала SVN.

Я что-то пропустил?

4b9b3361

Ответ 1

Скажем, у вас есть эти N успешных коммитов: 1, 2, 3 и 4.

Если вы выберете фиксацию 2 и выберите "Вернуть эту ревизию", ваша рабочая копия будет содержать изменения, внесенные с помощью коммитов 1 и 2. Заблокированные 3 и 4 будут отменены.

Если вы выберете фиксацию 2 и выберите "Отменить изменения из этой версии", ваша рабочая копия будет содержать изменения, внесенные с помощью коммитов 1, 3 и 4. Commit 2 будет "отменен" или, скорее, воспроизведен в обратном порядке верх фиксации 4: если строка была добавлена, она будет удалена. Если строка была удалена, она будет считана.

Ответ 2

Для одиночного и последнего, существует без разницы.

Разница возникает, когда вы хотите использовать ревизию где-то в середине списка изменений.

Revert to this revision вернет все коммиты с головы до этой версии.
Revert changes from this revision вернет только commit этой конкретной версии.

Ответ 3

Если вы хотите, чтобы весь ваш исходный код возвращался к тому, как все было в предыдущей редакции, выберите "Вернуть эту ревизию". Если вместо этого вы хотите сохранить свой локальный источник в актуальном состоянии, но отмените некоторые изменения, которые были сделаны несколько изменений назад, то вы не хотите, чтобы весь ваш локальный источник возвращался назад, вы просто хотите отменить это одно изменение, которое вы сделали Некоторое время назад. "Отменить изменения из этой версии" позволяет это сделать.

Ответ 4

Операции на стороне клиента не отображаются в журналах репозитория. Вероятно, вы захотите проверить:

  • TortoiseSVN → SVN Проверить наличие изменений

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

После просмотра локальных изменений необходимо выполнить как обычно.