当我执行gitdiffCOMMIT时,我看到了提交和HEAD之间的变化(据我所知),但我希望看到单个提交所做的变化。
我还没有在diff/log上找到任何明显的选项来提供输出。
当我执行gitdiffCOMMIT时,我看到了提交和HEAD之间的变化(据我所知),但我希望看到单个提交所做的变化。
我还没有在diff/log上找到任何明显的选项来提供输出。
当前回答
您可以在git的特定地址上单击每次提交以查看如果您使用工具提交,您可以通过展会历史记录
其他回答
对我来说,这很好
git show COMMIT --compact-summary
显示下一个信息
输出扩展头信息的浓缩摘要,例如diffstat中的文件创建或删除(“new”或“gone”,如果是符号链接,可选“+l”)和模式更改(“+x”或“-x”分别用于添加或删除可执行位)。信息放在文件名部分和图形部分之间。暗示--stat。
要查看特定COMMIT哈希的差异,其中COMMIT是提交的哈希:
gitdiffCOMMIT~COMMIT将向您展示COMMIT的祖先和COMMIT之间的区别。有关命令和gitrevisions的详细信息,请参阅gitdiff的手册页。
或者,gitshowCOMMIT也会做类似的事情。(提交的数据,包括其diff,但不包括合并提交的数据。)请参阅gitshow手册页。
(gitdiffCOMMIT也会显示COMMIT和头部之间的区别。)
git difftool COMMIT^ <commit hash>
如果您配置了difftool,也可以使用。
请参阅此处如何配置difftool。或此处的手册页。
此外,您可以使用git diff树--no commit id--name only-r<commit hash>来查看在给定的提交哈希中更改/提交了哪些文件。
如“gitcommit与其父级的差异的速记?”中所述,您也可以将gitdiff用于:
git diff COMMIT^!
or
git diff-tree -p COMMIT
使用gitshow,您需要(为了只关注diff):
git show --color --pretty=format:%b COMMIT
COMMIT参数是COMMIT-ish:
提交对象或可以递归地取消引用到提交对象的对象。以下是所有提交对象:提交对象、指向提交对象的标记对象、指向指向提交对象标记对象的标签对象等。
参见gitrevision“指定修订”以引用提交。另请参阅“tree-ish在Git中是什么意思?”。
另一种可能性:
git log -p COMMIT -1