将“ fixup”提交还原为先前的合并提交

问题描述 投票:0回答:2

我执行了以下合并:

A---B---C---E (HEAD, merge of C and D)
           /
      D---|

但是我注意到E中的一些问题,并在F中解决了这些问题:

A---B---C---E---F (HEAD)
           /
      D---|

我想修改提交E,使其包含在F中进行的“修正”更改。

[当我尝试git rebase -p -i HEAD~2时,它尝试创建一个常规(非合并)提交,甚至试图让我重新解决为E进行合并时已经解决的冲突。

我如何修正提交E,使其包含在F中所做的更改?

git rebase squash
2个回答
0
投票
git reset --soft E
git commit --amend

应该足够。在插入您在EE'之间所做的任何更改时,它将重新创建合并提交(具有与E不同的哈希,我们称其为F)。


0
投票

来自git docs

© www.soinside.com 2019 - 2024. All rights reserved.