Rebase "fixup" 提交到之前的合并提交
Rebase "fixup" commit into prior merge commit
我执行了以下合并:
A---B---C---E (HEAD, merge of C and D)
/
D---|
但我注意到 E 中的一些问题,并在 F 中修复了它们:
A---B---C---E---F (HEAD)
/
D---|
我想修改提交 E
以便它包含 F
中所做的 "fixup" 更改。
当我尝试 git rebase -p -i HEAD~2
时,它会尝试创建一个 常规(不合并) 提交,甚至试图让我重新解决我已经解决的冲突在为 E
.
执行合并时
我如何修复 提交 E
以便它包含在 F
中所做的更改?
git reset --soft E
git commit --amend
应该够了。它将重新创建合并提交(使用与 E
不同的散列,我们称之为 E'
),同时插入您在 E
和 F
之间所做的任何更改。
我执行了以下合并:
A---B---C---E (HEAD, merge of C and D)
/
D---|
但我注意到 E 中的一些问题,并在 F 中修复了它们:
A---B---C---E---F (HEAD)
/
D---|
我想修改提交 E
以便它包含 F
中所做的 "fixup" 更改。
当我尝试 git rebase -p -i HEAD~2
时,它会尝试创建一个 常规(不合并) 提交,甚至试图让我重新解决我已经解决的冲突在为 E
.
我如何修复 提交 E
以便它包含在 F
中所做的更改?
git reset --soft E
git commit --amend
应该够了。它将重新创建合并提交(使用与 E
不同的散列,我们称之为 E'
),同时插入您在 E
和 F
之间所做的任何更改。