第二章Git 基础#查看提交历史

查看提交历史

在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。

//会按时间先后顺序列出所有的提交,最近的更新排在最上面
$ git log

//显示每次提交所引入的差异,-2 选项来只显示最近的两次提交
$ git log -p -2

//每次提交的简略统计信息,可以使用 --stat
$ git log --stat

//使用不同于默认格式的方式展示提交历史 --pretty.比如 oneline short,full 和 fuller 
$ git log --pretty=oneline

//定制记录的显示格式. 文章末尾 Table1 列出了 format 接受的常用格式占位符的写法及其代表的意义
$ git log --pretty=format:"%h - %an, %ar : %s"

//形象地展示你的分支、合并历史.  后面第三章Git分支会经常用到
git log --pretty=format:"%h %s" --graph

//文章末尾 Table2  列出了 git log 的常用选项

 

限制输出长度

除了定制输出格式的选项之外,git log 还有许多非常实用的限制输出长度的选项,也就是只输出一部分的提交。

//列出最近两周的所有提交
$ git log --since=2.weeks

//只会显示那些添加或删除了该字符串的提交(未掌握)
$ git log -S function_name

//文章末尾Table3,列出了限制 git log 输出的选项 中列出了常用的选项
Table 1.  git log --pretty=format 常用的选项
选项说明

%H

提交的完整哈希值

%h

提交的简写哈希值

%T

树的完整哈希值

%t

树的简写哈希值

%P

父提交的完整哈希值

%p

父提交的简写哈希值

%an

作者名字

%ae

作者的电子邮件地址

%ad

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

%ar

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

%cn

提交者的名字

%ce

提交者的电子邮件地址

%cd

提交日期

%cr

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

%s

提交说明

你一定奇怪 作者 和 提交者 之间究竟有何差别, 其实作者指的是实际作出修改的人,提交者指的是最后将此工作成果提交到仓库的人。 所以,当你为某个项目发布补丁,然后某个核心成员将你的补丁并入项目时,你就是作者,而那个核心成员就是提交者。 我们会在 分布式 Git 再详细介绍两者之间的细微差别。

Table 2.  git log 的常用选项
选项说明

-p

按补丁格式显示每个提交引入的差异。

--stat

显示每次提交的文件修改统计信息。

--shortstat

只显示 --stat 中最后的行数修改添加移除统计。

--name-only

仅在提交信息后显示已修改的文件清单。

--name-status

显示新增、修改、删除的文件清单。

--abbrev-commit

仅显示 SHA-1 校验和所有 40 个字符中的前几个字符。

--relative-date

使用较短的相对时间而不是完整格式显示日期(比如“2 weeks ago”)。

--graph

在日志旁以 ASCII 图形显示分支与合并历史。

--pretty

使用其他格式显示历史提交信息。可用的选项包括 oneline、short、full、fuller 和 format(用来定义自己的格式)。

--oneline

--pretty=oneline --abbrev-commit 合用的简写。

Table 3. 限制  git log 输出的选项
选项说明

-<n>

仅显示最近的 n 条提交。

--since--after

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

--until--before

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

--author

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

--committer

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

--grep

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

-S

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值