Теперь снимок, на который указывает C4 ', точно такой же, как тот, на который указывал C5 в примере слияния.В конечном продукте интеграции нет никакой разницы, но перебазирование делает историю чище.Если вы изучите журнал перебазированной ветки, она будет выглядеть как линейная история: кажется, что вся работа выполнялась последовательно, даже когда она первоначально была параллельной.
Часто вы делаете это, чтобы сделатьубедитесь, что ваши коммиты применяются в удаленной ветке - возможно, в проекте, в который вы пытаетесь внести свой вклад, но который вы не поддерживаете.В этом случае вы выполняете свою работу в ветке, а затем переводите свою работу в origin / master, когда будете готовы отправить свои исправления в основной проект.Таким образом, сопровождающему не нужно выполнять какую-либо интеграционную работу - просто быстрая перемотка вперед или чистое применение.
Обратите внимание, что моментальный снимок, на который указывает финальный коммит, с которым вы в итоге работаете, является ли он последнимиз перебазированных коммитов для перебазирования или окончательного коммита слияния после слияния, это тот же моментальный снимок - отличается только история.Перебазирование воспроизводит изменения из одной строки работы в другую в том порядке, в котором они были введены, тогда как объединение берет конечные точки и объединяет их вместе.