1. 查找改动某个文件所有的日志
git log --pretty=oneline somefile.java git log --oneline somefile.java git log --pretty=format:"%h %an,%cd : %s" somefile.java
2. 格式化输出,git log --pretty=format:" "
选项 说明 %H 提交对象(commit)的完整哈希字串 %h 提交对象的简短哈希字串 %T 树对象(tree)的完整哈希字串 %t 树对象的简短哈希字串 %P 父对象(parent)的完整哈希字串 %p 父对象的简短哈希字串 %an 作者(author)的名字 %ae 作者的电子邮件地址 %ad 作者修订日期(可以用 -date= 选项定制格式) %ar 作者修订日期,按多久以前的方式显示 %cn 提交者(committer)的名字 %ce 提交者的电子邮件地址 %cd 提交日期 %cr 提交日期,按多久以前的方式显示 %s 提交说明
git log --pretty=format:"%h %an,%cd : %s"
3.指定日期、关键字、作者
--since, --after 仅显示指定时间之后的提交。 git log --since=2.days --until, --before 仅显示指定时间之前的提交。 git log --until=10.days --author 仅显示指定作者相关的提交。 git log --author=BeginMan --committer 仅显示指定提交者相关的提交。 git log --committer=Jack
--grep 仅显示指定关键字的提交。 git log --grep=init
注意作者与提交者的关系:作者是程序的修改者,提交者是代码提交人。
如指定2天前,作者为“BeginMan”的提交含有关键字‘init‘的前2条记录:$ git log --since=2.days --author=BeginMan --grep=init -2
注意:上面选项后面的参数可以带单双引号,如--author="BeginMan"
4. 显示修改的文件
--name-only 仅在提交信息后显示已修改的文件清单
--name-status 显示新增、修改、删除的文件清单
git log --name-only git log --name-only --oneline git log --name-status git log --name-status --oneline
5. 显示日志统计信息
--stat 显示每次更新的文件修改统计信息,也显示更新的文件名和修改的多少。 --shortstat 只显示 --stat 中最后的行数修改添加的统计。不显示更新的文件名。
git log --stat git log --stat --oneline git log --shortstat git log --shortstat --oneline
6. 显示单次日志信息
git show [commit id] git show [commit id] --name-only git show [commit id] --name-only --oneline git show [commit id] --name-status git show [commit id] --stat git show [commit id] --shortstat
原文:http://www.cnblogs.com/drizzlewithwind/p/5726911.html