首页 » 信息技术 »

git log命令的常用参数

2019年8月23日 / 7次阅读
Git

git log命令用来查看分支过往的commits,默认在没有参数的情况下,显示的内容包括commit的SHA-1校验值(40位),提交人name和email,提交时间,以及comments。这种显示方式,不一定适合所有的需求,幸好git log命令还有一些参数,可以让我们看到不一样的commit历史。

--oneline

用简介的方式来显示commit历史,一行一个commit,第1列是SHA-1值的前7位,后面是comments,同时还会显示HEAD指针和tag信息。这个参数几乎可以跟其它所有参数配合使用。

$ git log --oneline
10d4f22 (HEAD -> pp) optimaze JPG compress algo
263779b try to prefer progressive
4bb2cb2 (tag: V0.09) modify slogan
bde5f13 give up capture_output,support lower version
696ee97 change f-string to %-string,support lower version.
032ca2f init commit
d7815ae Initial commit

--oneline参数是--pretty=oneline和--abrev-commit这两个参数联合使用的效果,是一种简写。

-N

N是一个数字,表示只显示最后的N个commit信息。

$ git log --oneline -2
10d4f22 (HEAD -> pp) optimaze JPG compress algo
263779b try to prefer progressive

--patch(-p)

patch,就是补丁,我们常说的给系统打补丁,就是这个概念。这个参数会将diff的信息显示出来,方便代码review等。

$ git log -p -1

显示最后一个commit的信息,包括diff信息。

--stat

这个stat参数,会将每个commit修改的文件数,以及每个文件增删的行数统计出来。

$ git log --oneline --stat -2
10d4f22 (HEAD -> pp) optimaze JPG compress algo
 smally.py | 35 ++++++++++++++++++++++++++++++-----
 1 file changed, 30 insertions(+), 5 deletions(-)
263779b try to prefer progressive
 smally.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

--shortstat

进一步简化stat参数的显示,显示更加精简。

$ git log --oneline --shortstat -2
10d4f22 (HEAD -> pp) optimaze JPG compress algo
 1 file changed, 30 insertions(+), 5 deletions(-)
263779b try to prefer progressive
 1 file changed, 3 insertions(+), 1 deletion(-)

--name-only

这个参数,只将每个commit的修改的文件名列出来。

$ git log --oneline --name-only
10d4f22 (HEAD -> pp) optimaze JPG compress algo
smally.py
263779b try to prefer progressive
smally.py
4bb2cb2 (tag: V0.09) modify slogan
LICENSE
README.md
smally.py
bde5f13 give up capture_output,support lower version
smally.py
696ee97 change f-string to %-string,support lower version.
smally.py
032ca2f init commit
smally.py
d7815ae Initial commit
LICENSE
README.md

--graph

以ASCII图形的方式显示commit历史中分支和merge的信息。

$ git log --graph --oneline
*   649270f (HEAD -> master) Merge branch 'pp'
|\
| * 10d4f22 (pp) optimaze JPG compress algo
| * 263779b try to prefer progressive
* |   2a47aff (origin/master, origin/HEAD) Merge pull request #1 from xinlin-z/readme.md
|\ \
| |/
|/|
| * c6bec85 update readme
| * 318c930 update readme
| * 1484680 update readme
|/
* 4bb2cb2 (tag: V0.09) modify slogan
* bde5f13 give up capture_output,support lower version
* 696ee97 change f-string to %-string,support lower version.
* 032ca2f init commit
* d7815ae Initial commit

在git log中使用SHA-1的前7位

如果我们不想从最新的commit开始查看log,而是想从过去的某一个commit开始,再往下看,可以在git log命令行中使用SHA-1的前7位。

$ git log --oneline
10d4f22 (HEAD -> pp) optimaze JPG compress algo
263779b try to prefer progressive
4bb2cb2 (tag: V0.09) modify slogan
bde5f13 give up capture_output,support lower version
696ee97 change f-string to %-string,support lower version.
032ca2f init commit
d7815ae Initial commit
xinlin@ubuntu:~/repos/smally$ git log --oneline 696ee97
696ee97 change f-string to %-string,support lower version.
032ca2f init commit
d7815ae Initial commit

上面的例子,第2次git log的时候,就从命令行输入的696ee97这个checksum开始显示。

本文git log命令打印出来的信息,均来自本人的smally项目(批量无损压缩JGP图片),喜欢请点赞!:)

本文链接:https://www.maixj.net/ict/git-log-22677

相关文章

留言区


前一篇:
后一篇:

栏目精选

云上小悟,麦新杰的独立博客

Ctrl+D 收藏本页

栏目


©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1。云上小悟网站部分内容来源于网络,转载目的是为了整合信息,收藏学习,服务大家,有些转载内容也难以判断是否有侵权问题,如果侵犯了您的权益,请及时联系站长,我会立即删除。

网站二维码
go to top