Git перемещение ветки вперед в дереве

Ладно, я почти понял эту проблему.

Я могу почувствовать прорыв - вот переломный момент:

Как мне переустановить, чтобы перейти от:

A - - B - - C - - D - - E (HEAD)
|
\ - - F - - G (branch1)

To:

A - - B - - C - - D - - E (HEAD)
                  |
                  \ - - F - - G (branch1)

Я не просто хочу объединить HEAD ~ 1 в branch1, я думаю, что хочу перестроить branch1 правильно?

Мне кажется, что я почти понимаю это - помогите!?

Ответ 1

Это стандартный rebase, там ничего сложного не происходит. Вы хотите:

git checkout branch1
git rebase D

Ответ 2

Это можно сделать с помощью git rebase:

git checkout branch1
git rebase {COMMIT ID of D}