git log 使用及格式化参数详解

格式化后的字段信息

git log --pretty=format:"SHA-1:%h - 创建人:%an 时间:%ad 提交信息:%s" --date=format:"%y-%m-%d %H:%M:%S" --shortstat --since=2.weeks >log.txt

https://git-scm.com/docs/git-log

1. 参数说明

-p	按补丁格式显示每个更新之间的差异
--pretty 内容格式化
--date 日期格式化
--stat	显示每次更新的文件修改统计信息
--shortstat	只显示 --stat 中最后的行数修改添加移除统计
--name-only	仅显示已修改的文件清单
--name-status	显示新增、修改、删除的文件清单
--abbrev-commit	仅显示 SHA-1 的前9个字符,而非所有的 40 个字符
--relative-date	使用较短的相对时间显示(比如,“2 days ago”)
--graph	显示 ASCII 图形表示的分支合并历史
--since/after 显示提交比指定日期更新
--until/before 显示早于特定日期的提交
	>git log --since=2.weeks
	>git log --after="2020-01-01"
	>git log --since ==2019-12-01 --until=2020-01-01
--author 作者
--committer 提交者
--grep 筛选关键字
--grep-reflog 正则筛选
	>git log --grep="xxx" -i  
	-i 忽略大小写
	-E 扩展正则表达式
	-F 将限制模式视为固定的字符串
	-P 将限制模式视为与Perl兼容的正则表达式

-20 最近二十次提交记录,无则表示导出所有记录到log.txt

1.1 pretty格式说明

使用 > git log

默认格式,固定格式,输出不友好,时间的格式也不符合我们的阅读习惯
git log 使用及格式化参数详解_第1张图片

1.1.1 简单格式

下面是简单的格式

git log --pretty=oneline 一行格式(SHA-1+提交信息)
git log --pretty=short 短格式(SHA-1+作者+日期+提交信息)
git log --pretty=full 长格式(SHA-1+作者+提交者+提交日期+提交信息)
git log --pretty=fuller 长格式(SHA-1+作者+作者提交日期+提交者+提交者提交日期+提交信息)

1.1.2 格式化格式参数

可以自定义输出格式

%H	提交对象(commit)的完整哈希字串
%h	提交对象的简短哈希字串
%T	树对象(tree)的完整哈希字串
%t	树对象的简短哈希字串
%P	父对象(parent)的完整哈希字串
%p	父对象的简短哈希字串
%an	作者(author)的名字
%ae	作者的电子邮件地址
%ad	作者修订日期(可以用 -date= 选项定制格式)
%ar	作者修订日期,按多久以前的方式显示
%cn	提交者(committer)的名字
%ce	提交者的电子邮件地址
%cd	提交日期
%cr	提交日期,按多久以前的方式显示
%s	提交说明

1.2 date格式说明

1.2.1 小写格式:

 - %a 星期(缩写):Sat
 - %b 月份(缩写):Apri
 - %c 格式化输出日期时间 月//年 时::秒:04/25/20 18:21:01
 - %d 日期:25
 - %j 一年的第几天:116
 - %m 月份数字:04
 - %p 上下午:AM/PM
 - %w 星期几(0-6):6
 - %x 格式化输出短日期:04/25/20
 - %y 年份:20
 - %z 时区:+0800

1.2.2大写格式:

 - %A 星期(全写):Saturday
 - %B 月份(全写):April
 - %H 24小时制:18
 - %I 12小时制:06
 - %M 分钟:21
 - %S 秒:01
 - %U 一年的第几周(星期日作为每周的第一天):16
 - %W 一年的第几周(星期一作为每周的第一天):16
 - %X 格式化输出短时间:18:21:01
 - %Y 年份:2020
 - %Z 时区:+0800

你可能感兴趣的:(git)