我有一棵这样的树:
(commit 1) - master
\-- (commit 2) - (commit 3) - demo
\-- (commit 4) - (commit 5) - PRO
我必须将PRO分支移至主
(commit 1) - master
|-- (commit 2) - (commit 3) - demo
\-- (commit 4) - (commit 5) - PRO
我已经尝试过PRO分支中的
git rebase master
,但是什么也没有发生。要澄清:我是在master上工作的,所以我必须进行产品演示(
git checkout -b demo
和一些提交)。然后,由于错误,我从演示创建了另一个分支(git checkout -b PRO
和一些提交),现在我需要将PRO分支移至master并完整保留演示。最后,demo和PRO都将从主机挂起。 最佳答案
为此使用 --onto
:
git rebase --onto newBase oldBase feature/branch
鉴于您的情况:
git checkout PRO # Just to be clear which branch to be on.
git rebase --onto master demo PRO
基本上,您将从
demo
之后到PRO
的所有提交都重新放置到master
提交上。