Точечная ветвь к новой фиксации

(Этот вопрос противоположный этому)

Как я могу перейти от этого

dev            C - D
             /
master A - B 

к этому?

dev                D
                 /
master A - B - C 

Я знаю, что собираюсь пинать себя, когда вижу ответ, но на данный момент я немного застрял...

Ответы

Ответ 1

Решение

git checkout master
git merge C

С C является SHA1 commit C.

Результат

                 D (dev)
                /
master A - B - C (move master HEAD)

Это должно быть быстрое слияние.

Ответ 2

Некромантия, я знаю.

git branch -f master C

Не будет касаться текущего рабочего дерева вообще - вы можете выполнить свою работу.

Ответ 3

Вы можете использовать:

git checkout master

git merge c

Это объединит коммиты до c с мастером.