Git - 日志

记录常用的日志查询方式及格式

git log

bash 复制代码
commit <commitID>
Author: <user><<email>>
Date:   <time>

    <info>

    Change-Id: <changeID>

git log -p

bash 复制代码
# 在 git log 的基础上追加补丁信息
diff --git <file> <file>
index 54f466c..292b0df 100755
--- <file>
+++ <file>
@@ -252,7 +252,7 @@
         .............

git log --stat

bash 复制代码
# 在 git log 的基础上追加各个文件修改行信息
<file> | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

# 不携带具体文件信息
--shortstat
1 file changed, 1 insertion(+), 1 deletion(-)

git log --name-only

bash 复制代码
# 在 git log 的基础上追加修改的文件
<file>

# 携带文件修改状态
--name-status
M       <file>

git log --pretty=<>

bash 复制代码
oneline == git log --oneline, 只有 commit(短) msg
medium     默认
short      比默认少 Date 和 Change-Id, 即,只有 commit Author msg
full       比默认多 Commit Merge, 少 Date
fuller     比full多 AuthorDate CommitDate
email
  From <commitID> <time>
  From: <user> <<email>>
  Date: <time>
  Subject: [PATCH] <info>

  Change-Id: <changeID>
raw        比默认多 tree parent committer, 少 Date
format:
  %H  显示hash
  %h  提交对象的简短哈希字串
  %T  树对象(tree)的完整哈希字串
  %t  树对象的简短哈希字串
  %P  显示父节点hash
  %p  父对象的简短哈希字串
  %ad 显示作者时间 Mon May 15 09:40:07 2023 +0800
  %cd 显示提交时间 Mon May 15 09:40:07 2023 +0800
    --date=format:%Y-%m-%d %H:%M:%S 指定时间显示格式
  %ae 显示作者邮箱
  %ce 显示提交者邮箱
  %an 作者(author)的名字
  %cn 提交者(committer)的名字
  %ar 作者修订日期,按多久以前的方式显示
  %cr 提交日期,按多久以前的方式显示
  %s  显示主题
  %b  显示内容

git log --date=<>

bash 复制代码
relative == git log --relative-date
local       本地时间
iso         ISO 8601 format
rfc         RFC 2822 format
short       YYYY-MM-DD format
raw         %s %z format
format
  %a:星期缩写, Tue
  %A:星期全称, Tuesday
  %b:月份缩写, Jul
  %B:月份全称, July
  %c:时间全称, Tue 04 Jul 2023 02:24:58 PM GMT
  %d:日期 (01 -- 31), 04
  %H:小时 (00 -- 23), 14
  %I:小时 (01 -- 12), 02
  %j:一年中第几天 (001 -- 366), 185
  %m:月份 (01 -- 12), 07
  %M:分钟 (00 -- 59), 27
  %p:上午下午, AM/PM
  %S:秒数 (00 -- 59), 58
  %U:一年中的第几周,周日为一周的开始 (00 -- 53), 27
  %w:星期编号 (0 -- 6; 周日 is 0), 2
  %W:一年中的第几周,周以为一周的开始 (00 -- 53), 27
  %x:本时区的日期, 07/04/2023
  %X:本时区的时间, 02:24:58 PM
  %y:2位年份 (00 -- 99), 23
  %Y:4位年份, 2023
  %z, %Z:时区编号和时区名称缩写, +0000 GMT
  %%:Percent sign

其他参数

bash 复制代码
# 显示7位commit
--abbrev-commit

# 显示提交时间与当前时间差
--relative-date

# 显示 graph 信息
--graph

显示数量

bash 复制代码
-n          显示前n条
--after     在之后
--until     结束时间
--before    在之前
--since     开始时间
--author    作者
--grep      内容
--          文件
<br>        分支
--branches  所有分支,只是本地的所有分支
--no-merges 忽略合并的提交,两个分支合并代码时可能出现两个父节点的节点,该节点就是合并的提交,同理还有--merges参数
相关推荐
jstart千语8 小时前
【Git】连接github时的疑难杂症(DNS解析失败)
git·github
工具罗某人9 小时前
TortoiseGit使用图解
git
Zhuai-行淮9 小时前
vscode和git 踩坑
ide·git·vscode
这颗橘子不太甜QAQ10 小时前
Husky使用技巧
javascript·git·代码规范
fanTuanye10 小时前
Git基本使用(很详细)
git·github
忍者扔飞镖10 小时前
git
git
李菠菜12 小时前
解决Windows系统下Git克隆时报错“unable to checkout working tree”的方法详解
windows·git
island131412 小时前
【git#4】分支管理 -- 知识补充
大数据·git·elasticsearch
船长@Quant14 小时前
协作开发攻略:Git全面使用指南 — 引言
git·版本控制·源代码管理·协作开发
极小狐14 小时前
极狐GitLab 项目功能和权限解读
运维·git·安全·gitlab·极狐gitlab