git log命令

1、格式化 --pretty=format:"%cr %cn %s" --pretty=onelilne --pretty=fuller

%H 提交对象的完整哈希字符串

%h     提交对象的简短哈希字符串

%T    树对象的完整哈希字符串

%t    树对象

%P    父对象的完整哈希字符串

%p   父对象的简短哈希字符串

%an 作者名字

%ae 作者电子邮箱

%ad 作者修订日期

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

%cn 提交者名字

%ce 提交者电子邮箱

%cd 提交日期

%cr 提交日期,多久以前

%s 提交说明


2、是否合并信息 --merges --no-merges


3、时间范围 --after={} --before={}


4、-S -Snewa 通过查询文件的变更内容来检索出指定提交的日志 注:-S后没有=,与查询内容之间也没有空格符

--fileName fileName为任意文件名,查看指定文件的提交信息。(注:文件名应该放到参数的最后位置,通常在前面加上--并用空格隔开表示是文件)

5、--branchName branchName为任意一个分支名字,查看某个分支上的提交记录。同上,需要放到参数中的最后位置处。(注:如果分支名与文件名相同,系统会提示错误,可通过--选项来指定给定的参数是分支名还是文件名。)例:在当前分支中有一个名为v1的文件,同时还存在一个名为v1的分支,则:

git log v1 -- 此时的v1代表的是分支名字

git log -- v1 此时的v1代表的是文件名字

git log v1 -- v1


6、tagName或branchName 查询指定标签/分支中的提交记录

git log v1.0.. 查询从v1.0以后的提交历史记录(不包含v1.0)(在当前workcopy上的v1.0以后)

git log test..master 查询master分之中的提交记录但不包含test分支记录

git log master..test 查询master或test分之中的提交记录 试了,不生效啊委屈

git log test --not master 屏蔽master分支


7、根据commit查询日志

git log commit 查询commit之前的记录,包含commit

git log commit1 commit2 查询commit1与commit2之间的记录,包括commit1和commit2

git log commit1..commit2 同上,但是不包含commit1

其中,commit可以是提交哈希值的简写模式,也可以使用HEAD代替。HEAD代表最后一次提交,HEAD^为最后一个提交的父提交,等同于DEAD~1,h


8、查看提交时的详细修改信息 -p

9、列出具体修改信息 --stat

10、列出每次提交影响的总行数 --shorstat

11、使用较短的相对时间显示 (比如,"2 weeks ago") --relative-date

12、在提交信息后显示修改的文件 --name-only

13、在提交信息后显示修改的文件 及其 操作类型 --name-status


查看我的提交历史记录

git log --author='guzhangyu' --pretty=format:"%cd %s" --name-status

查看指定分支上的提交历史记录

git log --pretty=format:"%cn %cr %s" storage_item --not master -- dmj-items-services-support/src/main/java/com/raycloud/dmj/services/stock/TradeStockService.java 

自定义日志展示格式:

git config --global alias.logf "log --pretty=fortmat:\"%cr %cn %s\" --name-status"










猜你喜欢

转载自blog.csdn.net/guzhangyu12345/article/details/72877637