Добрый день, решил разобраться с гитом, нашёл интересный сервис (learngitbranching.js.org - Сборная солянка - 2 уровень "Жонглируем коммитами"), который рассказывает все о нем. Пытаюсь пройти уровень за 4 команды, именно за столько и нужно. Но получается только за 5.
Задание:
- Переставить коммит так, чтобы нужный находился наверху при помощи
git rebase -i
- Внести изменения при помощи
git commit --amend
- Переставить всё обратно при помощи
git rebase -i
-
И наконец, переместить master на изменённую часть дерева, чтобы закончить уровень.Не понимаю как сделать эту задачу за одну команду!Изначально имеем: * - значит что мы находимся на этой ветке, т.е мы на ветке caption
Ход выполнения:
git rebase -i master - перемещаем все коммиты до развилки в мастер и меняем местами C3 и С2
git commit --amend - вносим какие либо изменения в коммит С2
git rebase -i master - меняем местами С2 и С3
А вот далее нужно каким то образом, находясь в ветке caption подтянуть изменения в master за одну команду ... как это сделать не пойму.
Делал так:
git checkout master - переходим на мастер
git rebase caption -
тут тоже небольшой вопросец: по идеи этой командой мы должны были
ПЕРЕМЕСТИТЬ все коммиты из ветки в которой сейчас находимся
(master) в
(caption) поверх, но в мастере же меньше комитов, че мы туда будем копировать то ? С0 ? Вообщем не не совсем понятно как она так срабатывает, что мы в с
(master) вставляем коммиты из
(caption).
Итог: как сделать подтягивание за одну команду без
git cherry-pick и как так срабатывает странно
rebase ?