所以我的项目看起来像这样:
A--B--C--D master
\
\-E--F--G--H topic 1
我想重新定位主题分支的一部分,使它看起来像这样:
A--B--C--D master
\ \-G--H topic 2
\-E--F topic 1
是否有可能,如果有,你们可以帮助我吗?谢谢!
答案 0 :(得分:2)
您可以在此处使用rebase --onto
来处理topic2
分支。首先,从topic2
创建topic1
分支:
git checkout -b topic2
然后使用rebase --onto
:
git rebase --onto D F
要处理topic1
分支,只需切换回它,然后执行硬重置以删除前2个提交:
git checkout topic1
git reset --hard HEAD~2
答案 1 :(得分:1)
你可以cherry-pick
G和H加入主题2,然后git reset
主题1回到F吗?
从master
开始,我会运行以下内容:
git checkout -b topic-2
git cherry-pick G
git cherry-pick H
git checkout topic-1
git reset F --hard