改变Git Parent Branch

dpa*_*lus 3 git branch

假设我们有一个分支结构,如:

develop   -> --- a --- b --- c
                  \           \
feature 1 ->       \           --- d --- e
                    \    
feature 2 ->         --- f --- g
Run Code Online (Sandbox Code Playgroud)

在对特征1进行工作之后,我认为它确实应该作为特征2的子任务分支.

功能1是否有一种方法可以"撤消"开发的分支,而是在保留其提交的同时分支功能2?

例:

develop   -> --- a --- b --- c    
                  \    
feature 1 ->       \         --- d --- e
                    \       /
feature 2 ->         f --- g
Run Code Online (Sandbox Code Playgroud)

161*_*903 7

最简单的解决方案是使用带有--onto标志的rebase ,如Git书中所述.命令:

git rebase --onto feature2 develop feature1
Run Code Online (Sandbox Code Playgroud)

feature1不会发现rebase提交develop的内容feature2.