You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查看经git rebase -i修改后的提交消息差异?

查看Git改写前后的提交消息差异

步骤1:找到旧提交的哈希值

执行git reflog命令,查看本地仓库的操作日志。你会看到类似这样的记录:

abc1234 HEAD@{0}: rebase -i (finish): returning to refs/heads/main
def5678 HEAD@{1}: commit: 旧的提交消息内容

这里的def5678就是被你改写的旧提交哈希,abc1234是改写后的新提交哈希。

步骤2:对比新旧提交的消息差异

有几种简单的方式可以对比:

  • 方式一:分别查看新旧提交的消息
    执行以下命令分别输出旧提交和新提交的消息:

    git show --format=format:%B def5678
    git show --format=format:%B abc1234
    

    你可以直接对比两个输出结果的差异。

  • 方式二:直接生成差异对比
    用git diff结合进程替换,直接输出两个提交消息的差异:

    git diff --no-index <(git show --format=format:%B def5678) <(git show --format=format:%B abc1234)
    

    这个命令会像普通文件diff一样,高亮显示提交消息的修改部分。

  • 方式三:对比整个提交对象的差异
    如果想确认除了提交消息外,提交内容是否有变化(仅修改提交消息的话内容通常不变),可以直接对比两个提交:

    git diff def5678 abc1234
    

    输出里会包含提交消息的差异,以及提交内容的差异(如果有的话)。

小技巧

如果旧提交是rebase前的HEAD,也可以直接用HEAD@{1}代替旧提交哈希,比如:

git diff --no-index <(git show --format=format:%B HEAD@{1}) <(git show --format=format:%B HEAD)

内容的提问来源于stack exchange,提问作者Rob Bednark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 06:53:11