В общем случае команда git rebase
добавляет все коммиты из ветки, на которой вы находитесь, следующими за коммитом, который вы передаете git rebase
как аргумент. Если передать первым аргументом ветку, Git найдет последний общий коммит между текущей веткой и целевой веткой и добавит коммиты из текущей в целевую один за одним. Можно представить себе, что git rebase
по очереди "накатывает" каждый из коммитов вашей ветки на целевой коммит. При этом у всех "накатанных" коммитов изменяются метаданные (например, родительский коммит), поэтому с точки зрения Git это теперь новые коммиты.
На семинаре мы познакомились с двумя случаями применения git rebase
.
Для того, чтобы объединить две ветки в одну (например, когда работа над задачей закончена и нужно влить это задачу в ветку master
), часто используют команду git merge
. Это команда объединяет ветки путем создания отдельного коммита, у которого два родителя - комм