我有一个名为feature
的分支,它有一些提交。分支及其提交仍然是我的机器的本地(没有push
到公共存储库)。该图表看起来像
A---B---C---D---E---F---G master
\
P---Q---R feature
现在我意识到我应该在早先的feature
提交中创建分支master
。让我们说提交C
。换句话说,图形应该看起来像
A---B---C---D---E---F---G master
\
P---Q---R feature
我本质上要做的是将D
,E
和F
提交到feature
分支之外。是的,我可以revert
一次提交一个,但有太多不能恢复;上图只是一个例子。
答案 0 :(得分:10)
您要做的是 rebase 。要获取提交P
,Q
和R
并将其应用于C
之上,请执行:
git rebase --onto C F feature
有关详细信息,请参阅git-rebase
的手册页。