Git --format参数速查表

Eave 2026.08.27

Git--format参数速查表

语法:git log --format='%h - %an : %s'。占位符用 % 开头,%% 输出一个百分号,%n 换行。下面按用途分类整理常用与完整参数。

一、哈希/对象

参数 含义
%H 完整 commit hash
%h 缩写 commit hash
%T 完整 tree hash
%t 缩写 tree hash
%P 完整 parent hashes(多个空格分隔)
%p 缩写 parent hashes

二、作者(Author,真正写代码的人)

参数 含义
%an 作者名 author
%aN 作者名(受 .mailmap 影响)
%ae 作者邮箱
%aE 作者邮箱(受 .mailmap 影响)
%al 作者邮箱 @ 前部分
%aL 同上(受 .mailmap 影响)
%ad 作者日期(受 --date=format:'%Y-%m-%d %H:%M:%S' 控制格式)
%aD 作者日期,RFC2822(Mon, 25 Apr 2022 23:53:09 +0200)
%ar 作者日期,相对时间(2 days ago)
%at 作者日期,UNIX 时间戳
%ai 作者日期,ISO 8601-like(2022-05-02 15:49:11 +0200)
%aI 作者日期,严格 ISO 8601(2022-05-02T15:49:11+02:00)
%as 作者日期,短格式(YYYY-MM-DD)
%ah 作者日期,human 格式

三、提交者(Committer,最后提交到仓库的人)

参数 含义
%cn / %cN 提交者名(%cN 受 .mailmap 影响) committer
%ce / %cE 提交者邮箱(%cE 受 .mailmap 影响)
%cl / %cL 提交者邮箱 @ 前部分
%cd / %cD / %cr / %ct / %ci / %cI / %cs / %ch 提交者日期,规则同作者对应项

作者 ≠ 提交者:别人发 patch 给你,你是 committer,他是 author。

四、提交信息

参数 含义
%s subject,提交标题(第一行) subject
%f 标题清洗版,适合做文件名
%b body,提交正文
%B 原始完整信息(标题 + 正文)
%N commit notes(若有)
%e 编码(如 UTF-8)

五、引用/分支/标签

参数 含义
%d 引用名,带括号装饰((HEAD -> main, origin/main, tag: v1.0)) ref
%D 引用名,不带括号(HEAD -> main, origin/main)
%S 命令行里通过该 ref 到达此 commit 的名字(配合 git log --source)

六、GPG签名

参数 含义
%G? 签名状态:G=有效,B=无效,U=未知,N=无签名 gpg
%GG GPG 原始校验信息
%GS 签名者名字
%GK GPG key id

七、控制字符/颜色

参数 含义
%n 换行 ctrl
%% 输出一个 %
%Cred / %Cgreen / %Cblue / %Cyellow / %Creset 颜色控制(红/绿/蓝/黄/重置)
%C(auto) 自动颜色
%C(#ffffff) 自定义颜色(十六进制)