首页/开发/Git 与协作速查/git range-diff 对比两次变基的结果
合并变基与冲突71 条

git range-diff 对比两次变基的结果

比较同一段提交在两个版本(如变基前后、两个 MR 分支)之间的对应关系,回答「这次强制推送改了什么」。

Git 与协作速查开发更新于 2026-10-12
用途比较两组提交序列的差异
语法git range-diff <旧范围> <新范围>
典型场景评审 force push、核对变基结果

常用示例

常用示例
git range-diff main..feature@{1} main..feature
git range-diff origin/main..origin/feature origin/main..feature
git range-diff v1..v1-old v1..v1-new
输出用 !、= 标注每条提交「有改动 / 等价」,配合 git log --walk-reflogs 找变基前的引用。

易错点

  • 范围写法要求两组提交数量可比,格式错误时输出为空或报错,先分别 git log 确认
  • reflog 是本地信息,换台机器就没有旧引用了,评审前后趁早记录

数据来源与参考

  • Git 官方文档:git-range-diff
  • Pro Git 2nd Edition · 7.7 重置揭密(reflog 相关)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌