文章目录

  • 一、不带参数
  • 二、带参数
  • 1.参数`-p`或`--patch`
  • 2.参数`--stat`
  • 3.参数`--pretty`
  • 4.参数`--graph`
  • 5.限制输出长度的参数
  • 5.1.参数`--since`和`--until`
  • 5.2.参数`-S`



在提交了更新或克隆了某个项目后,可以通过

git log命令查看提交历史。

一、不带参数

  • 按照时间顺序展示多有的提交,最近的更改排在最上边。
  • 会列出每个提交的SHA-1校验和,作者的名字、电子邮箱,提交时间,注释。

java git api 获取代码提交行数 git获取提交记录_git


二、带参数

1.参数-p--patch

  • 显示每次提交所引入的差异;
  • 可以在后边加上-<n>参数,以此来显示最近的n次提交,例如:-2,就会显示最近的两次提交;

2.参数--stat

  • 可以看到每次提交的简略统计信息;
  • 会列出所有被修改过的文件、有多少文件被修改了,被修改过的文件的哪些行被移除或添加了;
  • 在每次提交的最后还会有一个总结。

3.参数--pretty

  • 可以使用不同于默认格式的方式展示提交历史;
  • --pretty=oneline会将每个提交放在一行显示;
  • --pretty=format:"%h - %an, %ar : %s"可以定制记录的显示格式。

--pretty=format参数常用的选项:

选项

说明

%H

提交的完整哈希值

%h

提交的简写的哈希值

%T

树的完整哈希值

%t

树的简写哈希值

%P

父提交的完整哈希值

%p

父提交的简写哈希值

%an

作者的名字

%ae

作者的电子邮箱

%ad

作者修订日期(可以使用 --date==选项来定制格式)

%ar

作者修订日期,按多久以前的方式显示

%cn

提交者的名字

%ce

提交者的电子邮箱

%cd

提交日期

%cr

提交日期(距今多长时间)

%s

提交说明

作者和提交者之间不一定是同一个人,作者是实际做出修改的人,提交者是最后将工作成果提交到仓库的人。

4.参数--graph

  • 添加了一些ASCII字符串来形象的展示分支、合并历史;

5.限制输出长度的参数

5.1.参数--since--until

  • 按照时间限制,例:--since=2.weeks,就会列出最近两周的所有提交;

5.2.参数-S

  • 通过接收一个字符串参数,并只显示那些添加或删除了该字符串的提交;

限制git log输出的选项:

选项

说明


仅显示最近的n条提交

–since,–after

仅显示指定时间之后的提交

–until,–before

仅显示指定时间之前的提交

–author

仅显示作者匹配指定字符串的提交

–committer

仅显示提交者匹配指定字符串的提交

–grep

仅显示提交说明中包含指定字符串的提交

–S

仅显示添加或删除内容匹配指定字符串的提交