Как мне откатить весь коммит или его часть в svn?

StackOverflow https://stackoverflow.com/questions/611879

  •  03-07-2019
  •  | 
  •  

Вопрос

Как мне отменить весь коммит SVN или его часть, используя TortoiseSVN?

Это было полезно?

Решение

Во-первых, вам нужно определить, скорее всего, вы хотите вернуть "все изменения" ревизии или только одного файла.TortoiseSVN использует только подход "1 или все";это означает, что вы можете вернуть весь набор для регистрации или отдельные файлы:не частичные проверки.

Полный набор изменений

Итак, если вы возвращаете назад определенную ревизию (и вы хотите, чтобы были изменены все файлы в этом наборе изменений), вам нужно щелкнуть правой кнопкой мыши -> TortoiseSVN -> Показать журнал.Найдите ревизию / набор изменений, до которых вы хотите выполнить откат, щелкните правой кнопкой мыши на этой ревизии "Вернуться к этой ревизии".

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

Один файл

Другой вариант - вернуть один файл обратно.Вы бы снова щелкнули правой кнопкой мыши -> TortoiseSVN -> Показать журнал;но на этот раз вы можете выбрать один файл.

TortoiseSVN не позволяет вам выбирать несколько файлов в наборе изменений для возврата обратно.Это либо все, либо только 1.

Проверки набора изменений

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

Я смотрю на этих разработчиков, прищурившись.-_^

Другие советы

Если вы хотите отменить ранее сделанную фиксацию (ревизию):

С проводником:

<Ол>
  • Щелкните правой кнопкой мыши файл / папку, которую вы хотите восстановить,
  • TortoiseSVN-> показывать журнал,
  • щелкните правой кнопкой мыши по нежелательной ревизии,
  • " отменить изменения этой версии ",
  • <Литий> & GT за направление;. ОК

    Если вы хотите отменить внесенные локально изменения (без изменений)

    С помощью проводника: щелкните правой кнопкой мыши файл (ы), выберите TortoiseSVN-> gt; Revert.

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

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

    Вы можете не фактически отменить регистрацию (как в " этого никогда не происходило), старое состояние все еще будет в истории хранилища.

    На самом деле удаление / удаление материала - это давний запрос функции:

    http://subversion.tigris.org/issues/show_bug.cgi ? ID = 516

    Лицензировано под: CC-BY-SA с атрибуция
    Не связан с StackOverflow
    scroll top