假设我有一个基于 master 的分支,以合并提交结束:
--A---C<master]---D---E---F<my-feature]
\ /
B
X
在交互式 rebase之间添加提交D
很E
简单 - 我运行
git rebase -i master
,将提交D
操作设置为edit
,变基后变基停止D
。我只是在那一刻创建新的提交,然后继续变基。分支现在看起来像
...C<master]---D---X---E'---F'<my_freature]
.
现在我想在C
and之间添加一个提交D
。期望的结果:
C<master]---X---D'---E'---F'<my_freature]
我试过
git rebase -i master~
我想将合并提交设置C
为edit
,但交互式 rebase 以某种方式忽略了合并提交C
并只为我提供链A--B--D--E
,因此 rebase 会导致合并提交丢失C
。
有没有一种简单的方法可以像这样使用交互式 rebase 向分支提交提交?
请注意,我可以想出一个更复杂tmp
的解决方案,比如在 上创建新分支master
,提交X
它然后变基my-feature
到tmp
,我只是好奇是否有一种简单直接的交互式变基方法。