这是git的新系列,不常用的命令和其参数比较容易记不住,干脆将常用的记录下来,日后查查方便也是好的,一篇文章一个git命令,长短根据命令有所不同。

git log命令主要用于查看提交历史,同时根据添加的参数不同也会有不同的用法


git log

直接使用git log,使用效果如下图所示,会把提交历史按照如下图的格式展示出来,这是在使用git中必不可少的一条命令

这个命令会根据提交的事件列出所有更新,最近的更新在最上面

从上往下,第一行是提交号,这是该次提交的SHA-1校验和

第二行是作者的名字

第三行是提交时间

最后一行是提交说明

如果提交数过多会进行分页显示,可以按回车继续查看或者q退出查看


git log -2

通过参数,git log -2可以只显示最近的两条提交记录


git log -p

最常用的选项是 -p,这个参数可以用来展示出每次提交内容的差异,不过内容可能会比较多,一般会和上面的-2参数一起使用限定查看的提交数

当然直接指定commit号,查看对应的commit的差异也是可以的


git -log --stat

然而你并不想要这么详细的信息(我的那个就贼长,根本看不下去),也不想要裸命令那么简短的信息,于是应该使用-stat参数

注意了,这里的参数是“两道杠”,一道杠等级不够大队长(git bash)是不认的

这根本看不到啥啊?不满意这个参数往下看。


git log --pretty

--stat显然不能满足定制的需要,所以我们用点厉害的,--pretty参数可以定制显示格式,从最牛皮的开始

git log --pretty=format

它可以定制要显示的记录格式,这才是最想要的

我要偷懒截图了,表格不想弄了

git log --pretty=oneline

它可以让你的提交在一行显示完(当然显示器得够宽)

git log --pretty=short

真的很short了【笑哭】

git log --pretty=full

git log --pretty=fuller

这俩命令就不浪费时间了,只是比short多了点commit信息


git log --shortstat

这个真的就是比--stat短了一点啊,只显示--stat中最后的修改过的统计


git log --name-only

只是在提交信息后面显示被修改的文件清单,连修改几行都不给你显示了


git log --since=2.weeks

虽然有git log -2这样的操作但是一般是不会使用的,有按照时间作限制的选项更常用,例子中的命令是显示近两周的提交

见笑了,两周内该仓库并没有提交(我又懒了)

比较强大的是,这个参数支持多种日期的格式,2018-02-01可以,你要是英语能力过关也可以用英语,2 years 1 day 3 minutes ago

选项 说明
-(n) 就是-2这样的用法仅显示最近的n条提交
--since , --after 和例子一样用来限制时间的,仅显示指定时间之后的提交
--until , --before 仅显示指定时间之前的提交
--author 指定作者
--committer 指定提交者
--grep 跟linux的grep一个意思,按关键字显示
-S 仅显示添加或移除了某个关键字的提交

感觉-S比较难懂,来个例子

git log -S Singleton

这个是找出添加了 Singleton 这个关键字的提交,和grep参数还有一些区别


git log --grep Singleton

--grep 参数是找出commit message中的关键字,并不能进入提交内部看代码部分,但是-S是根据代码的部分查找

这次就到这就结束啦,如果有错我会再进行修正,请大家多多指教

转载于:https://www.cnblogs.com/lenomirei/p/8379457.html

[Git] git log命令相关推荐

  1. git使用log命令显示中文乱码

    背景: 公司项目使用GIT进行代码同步. 问题: 之前代码提交后,有中文备注,但是在使用git log查看代码历史记录的时候发现显示乱码,如下: 后查询相关资料,现将解决办法总结如下: 1.运行Git ...

  2. git 查看某些文档的历史版本_Git 教程(二)log 命令的使用

    使用 Git 进行版本控制时,要习惯他的工作流程,Git 的工作流程是,先在工作区创建项目并编写代码,然后将写好的文件添加到暂存区,最后将暂存区里的文件提交到历史版本库.如下图所示: 每向版本历史库做 ...

  3. Git(7)-- 查看提交历史(git log 命令详解)

    文章目录 1.`git clone` 2.`git log` 3.`git log -p` 4.`git log --stat` 5.`git log --pretty=oneline` 6.`git ...

  4. git log 命令详解

    git log 命令详解 git log 命令用于查看提交历史: git log [options] [<file> <commit> <tag>...] 如果不加 ...

  5. 运维之道 | Git log 命令详解

    Git log 命令详解 Git log 可以让我们查看提交commit history [root@localhost villian]# git log commit 7a690b414f87fb ...

  6. 【Git学习】 如何通过git log命令来打印出在两个commit之间的所有不同的author提交的记录

    一.需求描述 每次集成提测,都会有一大批的人员合并代码到develop分支,然后jenkins编译完成之后,得写提测记录.之前负责提测的人员都是直接复制jenkins的修改记录页面的文字.如下所示: ...

  7. Git 最全命令总结都在这里了

    1. 基本命令 git diff 不加参数直接输入 git diff : 尚未暂存的文件更新了哪些部分 git diff --staged : 已暂存文件与最后一次提交的文件差异 git diff - ...

  8. Git基础(常用命令)介绍

    版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统. 关于版本控制分为三种:本地版本控制系统,如rcs:集中化的版本控制系统,如CVS.SVN:分布式版本控制系统,如Git. Gi ...

  9. git 工作常用命令

    2019独角兽企业重金招聘Python工程师标准>>> git log --pretty=oneline // 看看提交日志 git remote update // 更新远程代码 ...

最新文章

  1. Mac下布置appium环境
  2. springmvc简述
  3. C++(五)——运算符重载
  4. django数据库模型搭建ORM
  5. 工作166:正确eachrt渲染方式
  6. 求阶乘的和(信息学奥赛一本通-T1091)
  7. TensorFlow2.0:自定义层与自定义网络
  8. go技术文章梳理(2018)
  9. java 权限管理都用什么_java权限管理框架有哪些?
  10. 我的世界(16)-解决Minecraft Forge官网无法下载文件的问题
  11. 蚂蚁金服自研架构 SOFA 背后的工程师|1024快乐
  12. 一篇数学建模优秀论文之简述
  13. git报错Push to origin/master was rejected的解决办法
  14. word只读模式怎么改成编辑模式
  15. Gut Microbes | 基于宏基因组发现猕猴肠道中的大量微生物新基因组
  16. JSON转List集合
  17. CRC32的CrackMe
  18. 硬件工程师都没人干了_将软件带到硬件上,到底意味着什么?
  19. 复仇者联盟:钢铁侠与Spring的解耦思想
  20. 多媒体计算机维修记载,多媒体教学计划(精选3篇)

热门文章

  1. 12.前K个高频元素---使用优先队列和哈希表解决
  2. 人群密度估计--Structured Inhomogeneous Density Map Learning for Crowd Counting
  3. Centos 7 解压文件
  4. linux在机房设置ip,双线机房双IP linux设置路由
  5. vim的高级用法配置以及在系统中如何获取帮助
  6. java贪心算法 区间调度_贪心算法-区间调度问题解之证明(示例代码)
  7. jdbcpingquery mysql_JDBC - liuping - 博客园
  8. java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...
  9. Android Action Bar 详解篇
  10. vonr信令流程_SA EPS FallBack重要信令节点