当我执行gitdiffCOMMIT时,我看到了提交和HEAD之间的变化(据我所知),但我希望看到单个提交所做的变化。
我还没有在diff/log上找到任何明显的选项来提供输出。
当我执行gitdiffCOMMIT时,我看到了提交和HEAD之间的变化(据我所知),但我希望看到单个提交所做的变化。
我还没有在diff/log上找到任何明显的选项来提供输出。
当前回答
以下代码将显示当前提交
git show HEAD
其他回答
要查看特定COMMIT哈希的差异,其中COMMIT是提交的哈希:
gitdiffCOMMIT~COMMIT将向您展示COMMIT的祖先和COMMIT之间的区别。有关命令和gitrevisions的详细信息,请参阅gitdiff的手册页。
或者,gitshowCOMMIT也会做类似的事情。(提交的数据,包括其diff,但不包括合并提交的数据。)请参阅gitshow手册页。
(gitdiffCOMMIT也会显示COMMIT和头部之间的区别。)
您可以使用git diff HEAD HEAD ^1查看与父提交的差异。
如果您只想查看文件列表,请添加--stat选项。
对我来说,这很好
git show COMMIT --compact-summary
显示下一个信息
输出扩展头信息的浓缩摘要,例如diffstat中的文件创建或删除(“new”或“gone”,如果是符号链接,可选“+l”)和模式更改(“+x”或“-x”分别用于添加或删除可执行位)。信息放在文件名部分和图形部分之间。暗示--stat。
要通过提交查看作者和时间,请使用gitshowCOMMIT。这将导致如下情况:
commit 13414df70354678b1b9304ebe4b6d204810f867e
Merge: a2a2894 3a1ba8f
Author: You <you@you.com>
Date: Fri Jul 24 17:46:42 2015 -0700
Merge remote-tracking branch 'origin/your-feature'
如果您想查看哪些文件已更改,请使用上面“合并”行中的值运行以下命令:git diff--stat a2a2894 3a1ba8f。
如果要查看实际差异,请运行git-stat a2a2894 3a1ba8f。
检查文件更改的更简单方法(示例)
# 1. Checkout a branch and see the list of commits
git log --oneline -5
# > Output
9b9b1f8 (HEAD -> master) Updated ABC
d58e5da chore: Added files
5a4aa2c chore: Added my pipeline
bb2b0b7 feat: Added ABC
473f711 feat: Added ZYX
# 2. Pick a commit hash and check which files were modified
git show --stat --oneline d58e5da
# > Output
d58e5da chore: Added versioning files
Someabcfile | 18 ++++++++++++++++++
myfolder/file.py | 19 +++++++++++++++++++
myfolder/file.js | 7 +++++++
myfolder/file.txt | 1 +
4 files changed, 45 insertions(+)
# 3. Pick a file to check the differences
git show d58e5da myfolder12/file.py
或者,从列表中检查一次提交中的所有文件差异:
git show d58e5da