首页 > 解决方案 > 我以交互方式在 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。

标签: gitbranchrebasebranching-and-merging

解决方案


简单的。将您的功能分支重新定位到 C':

git rebase --onto C' C Feature

C Feature部分从Cto Feature (head)(即和)中选择提交,该F部分将它们重新定位到.GH--onto C'C'

-i如果您想在它执行之前查看它会做什么,您可以添加交互式开关。


推荐阅读