git - 我以交互方式在 master 分支上重新建立基础,因此现在功能分支看起来比它早早开始了。我怎样才能解决这个问题?
问题描述
我有一个主分支和一个功能分支:
A --- B --- C --- D --- E Master
\
F - G --- H Feature
然后我以交互方式重新设置主分支,使得 C 改变(并变为 C'。现在分支之间的最新共同提交是 B:
A --- B --- C' --- D --- E Master
\
C - F --- G --- H Feature
我怎样才能回到我真正的意思?也就是说,功能分支中只有相关的提交,而不是我巧妙改变的旧提交:
A --- B --- C' --- D --- E Master
\
F - G --- H Feature
TIA。
解决方案
简单的。将您的功能分支重新定位到 C':
git rebase --onto C' C Feature
该C Feature
部分从C
to Feature (head)
(即和)中选择提交,该F
部分将它们重新定位到.G
H
--onto C'
C'
-i
如果您想在它执行之前查看它会做什么,您可以添加交互式开关。