首页 > 解决方案 > 从合并的分支编辑提交消息

问题描述

我有一个dev分支,我在其中合并了一个feature分支。

-A------B----C-G-H-I-> dev
        /
-D--E--F  feature

合并后,我做了多个其他提交(G,H,I)。是否可以编辑 D 和 E 的提交消息:

我尝试使用git rebase -i -r HEAD~6(因为我想编辑 E,这是第 6 次提交),但 git 仍然提示我手动合并featureinto dev(基本上已经通过 B 完成)。

这可以实现吗?

标签: git

解决方案


目前:没有人工干预是不可能做到的。

git rebase -r没有发现以下情况:

  • 我即将重播提交A'和之间的合并F'
  • 它们具有与原始提交完全相同的内容,A并且F
  • 所以我将使用与原始合并提交完全相同的内容作为B结果。

但是,如果您知道您只是改写了消息并且没有更改提交的内容,则很容易B手动“使用”的内容:

git rebase合并步骤停止时:

  • 恢复原始提交的内容B

    git restore -s B -SW . # short flags for:
                           # git restore --source B --staged --worktree .
    # or
    git checkout B -- .
    
  • 然后继续进行变基:

    git rebase --continue
    

推荐阅读