【发布时间】:2011-05-25 17:01:19
【问题描述】:
我的一位同事检查了 Git 的一些更改,我想看看这些更改到底是什么。换句话说,他的签到和它的父母之间的差异。
在我看来合乎逻辑的是运行这个命令:
git diff shaOfHisCheckIn
但这没有用。它似乎显示了该 SHA 和我当前的工作副本之间的差异。
显示给定 SHA 与其父级之间差异的正确命令是什么?
【问题讨论】:
我的一位同事检查了 Git 的一些更改,我想看看这些更改到底是什么。换句话说,他的签到和它的父母之间的差异。
在我看来合乎逻辑的是运行这个命令:
git diff shaOfHisCheckIn
但这没有用。它似乎显示了该 SHA 和我当前的工作副本之间的差异。
显示给定 SHA 与其父级之间差异的正确命令是什么?
【问题讨论】:
git show是你的朋友:
git show shaOfHisCheckIn
【讨论】:
git show <tag>) - 这是一个非常有用的命令。
如果您想在kdiff3、meld、kompare、xxdiff、tkdiff、diffuse 中直观地查看差异...
git difftool --dir-diff shaOfHisCheckIn^!
git difftool --tool=meld --dir-diff shaOfHisCheckIn^!
git difftool -t meld -d shaOfHisCheckIn^!
【讨论】:
试试这个:
git diff shaOfHisCheckIn^ shaOfHisCheckIn
或
git diff shaOfHisCheckIn{^,}
【讨论】:
git diff shaOfHisCheckIn shaOfHisCheckIn^
【讨论】: