如何让git log显示像svn log这样的文件名

SVN的日志有一个“-v”模式,输出在每次提交中更改的文件的文件名,如下所示:

jes5199$ svn log -v
------------------------------------------------------------------------
r1 |   jes5199 | 2007-01-03 14:39:41 -0800 (Wed, 03 Jan 2007) | 1 line
Changed paths:
   A /AUTHORS
   A /COPYING
   A /ChangeLog
   A /EVOLUTION
   A /INSTALL
   A /MacOSX

有没有一种快速的方法来获取git中每个提交中的更改文件列表?


有关更改文件的完整路径名称:

git log --name-only

有关已更改文件的完整路径名称和状态:

git log --name-status

对于缩写路径名和已更改文件的diffstat:

git log --stat

还有更多选项,请查看文档。


注意: git whatchanged已弃用,请改用git log

鼓励新用户改用git-log [1]。 whatchanged命令与git-log [1]基本相同,但默认显示原始格式diff输出并跳过合并。

该命令主要是出于历史原因保存的; 许多在git log通过阅读Linux内核邮件列表发明之前就已经学会了Git的人们的手指都经过了训练。


您可以使用命令git whatchanged --stat来获取每次提交中更改的文件列表(以及提交消息)。

参考

  • https://git-scm.com/docs/git-whatchanged

  • git show也是一个伟大的命令。

    它有点像svn diff ,但你可以通过它提交guid并查看该差异。

    链接地址: http://www.djcxy.com/p/45723.html

    上一篇: How to have git log show filenames like svn log

    下一篇: Popularity of Git/Mercurial/Bazaar vs. which to recommend