git log 查看某文件的修改历史
先进入此文件所在的目录下
1. git log --help
所有的git命令都可以通过git manual查看
在synopsis中可以看到公式 git log [<options>] [[--] <path>] 其中 []中的内容可以为空
每个option都有相应的解释
git log --help
GIT-LOG(1) Git Manual GIT-LOG(1)
NAME
git-log - Show commit logs
SYNOPSIS
git log [<options>] [<revision range>] [[--] <path>...]
DESCRIPTION
Shows the commit logs.
The command takes options applicable to the git rev-list command to control what is shown and how, and
options applicable to the git diff-* commands to control how the changes each commit introduces are
shown.
OPTIONS
--follow
Continue listing the history of a file beyond renames (works only for a single file).
--no-decorate, --decorate[=short|full|no]
Print out the ref names of any commits that are shown. If short is specified, the ref name
prefixes refs/heads/, refs/tags/ and refs/remotes/ will not be printed. If full is specified, the
full ref name (including prefix) will be printed. The default option is short.
:
2. git log -- filename (git log filename)
可以看到该文件相关的commit记录
git log -- README.md
commit 83bb011fac7cd4b94c7e711fc1b4457c43b0e60d
Author: lin <542072149@qq.com>
Date: Fri Jun 2 10:47:11 2017 +0800
测试
Change-Id: Ifbbb04e664407bb89f726bf967d2847ed211a949
commit 999e31080f96c29d84e11a82e87bfa175976fe0e
Author: lin <542072149@qq.com>
Date: Fri Apr 21 10:13:19 2017 +0800
测试
Change-Id: Iafb710f80d7970d052a0298ece955ce1fc3840ed
commit 0eaa6ba18abde83622379f152d42f63754a6fd5c
Author: lin <542072149@qq.com>
Date: Fri Apr 21 10:12:28 2017 +080
3. git log -p filename
可以显示该文件每次提交的diff
git log -p README.md
commit 83bb011fac7cd4b94c7e711fc1b4457c43b0e60d
Author: lin <542072149@qq.com>
Date: Fri Jun 2 10:47:11 2017 +0800
测试
Change-Id: Ifbbb04e664407bb89f726bf967d2847ed211a949
diff --git a/README.md b/README.md
index 565897b..85c6bcf 100644
--- a/README.md
+++ b/README.md
@@ -5,8 +5,9 @@ add a line
ss
新加一行, 完善一下
for ticket 11
-
+UUU
home
test and 11
+2017-06-02 10:46
4. git show commit-id filename
查看某次提交中的某个文件变化
git show 999e31080f96c29d84e11a82e87bfa175976fe0e README.md
commit 999e31080f96c29d84e11a82e87bfa175976fe0e
Author: lin <542072149@qq.com>
Date: Fri Apr 21 10:13:19 2017 +0800
测试
Change-Id: Iafb710f80d7970d052a0298ece955ce1fc3840ed
diff --git a/README.md b/README.md
index 8b79f6f..565897b 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
Add a little content
Srebase i
add a line
-
+ss
新加一行, 完善一下
for ticket 11
(END)
5.git show commit-id
根据commit-id查看某个提交
6. gitk --follow filename
以图形化的界面显示文件修改列表,
7.借助可视化工具 如 sourceTree 在最后一次修改的记录上 右键选中文件 查看历史修改
8.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(后跟指定格式)。 |
选项 |
说明 |
---|---|
-(n) |
仅显示最近的 n 条提交 |
--since, --after |
仅显示指定时间之后的提交。 |
--until, --before |
仅显示指定时间之前的提交。 |
--author |
仅显示指定作者相关的提交。 |
--committer |
仅显示指定提交者相关的提交。 |
--grep |
仅显示含指定关键字的提交 |
-S |
仅显示添加或移除了某个关键字的提交 |
- 关于Golang语言数组索引的有趣现象
- Golang不定参数
- Go并发编程基础(译)
- go-concurrent-programming.md
- Go语言并发模型:以并行处理MD5为例
- golang 使用json 包 实现序列化
- 【远古文章】用 Go 语言来看 Android! 出发, Android, 出发!
- Leaf 游戏服务器框架简介
- MongoDB 存储过程的使用以及性能调优方案
- [go语言]利用缓冲信道来实现网游帐号验证消息的分发和等待
- 【Golang语言社区--投稿专区】简单,好玩,有趣的命令行版12306(golang)
- 网游内存数据库的设计(1)
- 网游内存数据库的设计(2)
- Golang语言 上传文件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- linux ulimit 调优
- 初识ABP vNext(3):vue对接ABP基本思路
- 0801-什么是Apache Ranger - 4 - Resource vs Tag Based Policies
- IDA-3D技术细节分析
- 0802-Cloudera Data Center7.1.3正式GA
- 2017,科学使用strace神器(附代码,举栗子)
- kubernete编排技术四:Job和CronJob
- Go 视图模板篇(二):模板指令
- go语言学习(五):通道的用法
- PHP无锁内存nosql---Yac的实战
- 0803-什么是Apache Ranger - 5 - Hive Plugin
- 2017年的golang、python、php、c++、c、java、Nodejs性能对比[续]
- go语言学习(四):数组和切片
- 初识ABP vNext(4):vue用户登录&菜单权限
- 2017 从上到下打印树新解法