假设我有以下图表:
800 9ff
v v
----o--o--o--o--o--o <-master
\
o--o--o <-feature
我希望在命令之后出现以下状态:
800 9ff
v v
----o--o--o--o--o--o <-master
\
o--o--o <-feature
那么我如何在同一个分支上反击呢?你能否按照指定的确切分支和3个字符长的哈希给出一个确切的答案?
非常感谢。
答案 0 :(得分:1)
这是rebase --onto
的用途。在feature
上,执行此操作:
git rebase --onto 800 9ff
将您所在的分支(feature
)从9ff移动到800。
答案 1 :(得分:0)
我认为以下应该做你想做的事。
git checkout 800
git cherry-pick 9ff..feature
git checkout -b newfeature
结果图表看起来像
800 9ff
v v
----o--o--o--o--o--o <-master
\ \
\ o--o--o <-feature
\ \
\ (The same commit)
\ /
\ /
\ /
o--o--o <-newfeature
删除feature
分支并重命名newfeature
分支可以获得您想要的图表。