АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python и фреймворки. Сегодня последний день для записи! Жми!
⊗gtPmBrCCR 45 of 66 menu
Бесплатные курсы по Git. Начинаем, когда соберется 1000 желающих:) Жми для записи!

Более сложное перебазирование коммитов в Git

В системе Git можно выполнить перебазирование для трех веток. Пусть у нас есть две ветки member1 и member2, у которых есть разные коммиты.

В процессе работы над проектом нам понадобилось вставить коммиты commit3, commit4 из ветки member2 в ветку member1 и применить их на ветке master. Для этого выполняем следующую команду:

git rebase --onto master member1 member2

Данная команда приказывает системе Git переключиться на ветку member2, найти в ней коммиты, которых нет в ветке member1 и слить только эти недостающие коммиты с веткой master.

Теперь выполним слияние обратной перемоткой:

git switch master git merge member2

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

enru