2009-07-18 2 views

ответ

11

Для того, чтобы начать с обновлением -r 1 отменяет изменения 2 и 3 в вашем рабочем каталоге, в то время как backout -r 1 --merge отменяет ревизию 1, сохраняя изменения 2 и 3. Но есть более фундаментальная разница:

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

до:

0 - 1 - 2 - @3 

после Revert:

0 - @1 - 2 - 3 

после отката --merge; commit

0 - 1 - 2 - 3 - @5 
    \- 4 - - -/

Поскольку возврат влияет только на рабочий каталог, он невидим для любого пользователя, который клонирует ваш репозиторий. Они закончится в 3 до и после возвращения. Принимая во внимание, что после отсрочки они будут заканчиваться на 5, у которых нет изменений, сделанных на 1.

Смежные вопросы