这是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是根据代码的部分查找
这次就到这就结束啦,如果有错我会再进行修正,请大家多多指教
天啦,爷爷你关注的博主居然更新了?虽然没啥人关注......
[Git] git log命令的更多相关文章
-
GIT使用log命令显示中文乱码
背静: 公司项目使用GIT进行代码同步. 问题: 之前代码提交后,有中文备注,但是在使用git log查看代码历史记录的时候发现显示乱码,如下: 后查询相关资料,现将解决办法总结如下: 1.运行Git ...
-
[Git] 024 log 命令的补充
0. 回顾 [Git] 009 逆转未来 的 "1" 画张导图 其实 --oneline 前有个"关键字参数" "--pretty" --o ...
-
git log命令全解析,打log还能这么随心所欲!
git log命令非常强大而好用,在复杂系统的版本管理中扮演着重要的角色,但默认的git log命令显示出的东西实在太丑,不好好打扮一下根本没法见人,打扮好了用alias命令拍个照片,就正式出道了! ...
-
git学习------>如何用git log命令来查看某个指定文件的提交历史记录
有时候接手一份新代码时,看到某些文件的改动,但不清楚这个改动的作者和原因,想查看该文件的具体提交历史记录. 今天一个同事是这样做的,直接敲git log命令,然后再使用vim命令的搜索关键字的方法来查 ...
-
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 log --pret ...
-
git常用的命令集合
Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone g ...
-
GIT 版本控制常用命令学习汇总
GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...
-
git的一些命令行
以下代码均在命令行中执行:在目标文件夹目录下: 1.初始化一个Git仓库,使用git init命令. 2.添加文件到Git仓库,分两步: 第一步,使用命令git add <file>,注意 ...
-
Git基本常用命令
Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...
随机推荐
-
Spring应用教程-2 方法注入
作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 我们通常使用lookup方法注入,它可使Spring替换一个Bean的抽象或具体方法,返回查找容器中,其他Bea ...
-
android 在fragment中获取界面的UI组件
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanc ...
-
Jni Tips
1.JavaVM and JNIEnv JNI有两种关键的数据结构,JavaVM和JNIEnv,两者均为指向VM方法JNI方法的列表的的指针(C++版本中它们是Class,Class的所有成员均为函数 ...
-
FreeSWITCH 安装配置的 各种坑, 填坑
个人安装环境: OS:CentOS6.7 64位 FreeSWITCH Ver:1.6.17 一. 编译出错 安装 之前, 最好 先安装 这几个东西(如果有, 请忽略): yasm (有nasm的话 ...
-
Android开发学习笔记(二)——编译和运行原理(1)
http://www.cnblogs.com/Pickuper/archive/2011/06/14/2078969.html 接着上一篇的内容,继续从全局了解Android.在清楚了Android的 ...
-
用MVC5+EF6+WebApi 做一个小功能(二) 项目需求整理
在一个项目开始前,需求整理大概要占到整个项目周期15%甚至30%的比重,可以说需求理得越清楚,后续开发中返工几率越小.在一个项目中,开发新功能的花费的精力要远远小于修改功能的精力,这基本是一个共识.老 ...
-
【NOI】2017 整数(BZOJ 4942,LOJ2302) 压位+线段树
[题目]#2302. 「NOI2017」整数 [题意]有一个整数x,一开始为0.n次操作,加上a*2^b,或询问2^k位是0或1.\(n \leq 10^6,|a| \leq 10^9,0 \leq ...
-
leetcode754
class Solution { public: int reachNumber(int target) { // 理解这题的意思 这题就好做了 // 分析 首先考虑一种比较极端的情况 即一直向正方向 ...
-
tp-01 搭建过程
1:拷贝ThinkPHP框架系统文件夹自己的www目录中的tp-shop文件夹中 2:新建自己的项目文件(比如:shop)夹与ThinkPHP框架系统文件夹在同一级目录(当然也可以不同) 3: 在tp ...
- java后端技术栈