惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News | PayPal Newsroom
IT之家
IT之家
Jina AI
Jina AI
博客园 - 司徒正美
GbyAI
GbyAI
WordPress大学
WordPress大学
B
Blog
大猫的无限游戏
大猫的无限游戏
Y
Y Combinator Blog
阮一峰的网络日志
阮一峰的网络日志
Blog — PlanetScale
Blog — PlanetScale
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Recorded Future
Recorded Future
T
Threat Research - Cisco Blogs
AWS News Blog
AWS News Blog
Latest news
Latest news
宝玉的分享
宝玉的分享
小众软件
小众软件
NISL@THU
NISL@THU
C
CERT Recently Published Vulnerability Notes
The GitHub Blog
The GitHub Blog
P
Privacy & Cybersecurity Law Blog
P
Palo Alto Networks Blog
Spread Privacy
Spread Privacy
Last Week in AI
Last Week in AI
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Proofpoint News Feed
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
量子位
博客园_首页
T
The Exploit Database - CXSecurity.com
The Cloudflare Blog
M
MIT News - Artificial intelligence
H
Help Net Security
Security Archives - TechRepublic
Security Archives - TechRepublic
V2EX - 技术
V2EX - 技术
I
InfoQ
D
Darknet – Hacking Tools, Hacker News & Cyber Security
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
O
OpenAI News
MongoDB | Blog
MongoDB | Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
P
Privacy International News Feed
Microsoft Security Blog
Microsoft Security Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Google DeepMind News
Google DeepMind News
H
Hacker News: Front Page
W
WeLiveSecurity
N
News and Events Feed by Topic

Li Hui Blog

工作流调研与实践经验 如何搭建私有仓库 Nexus 并配置 SSL 证书 从零开始搭建单节点 ELK 浅谈一个产品的用户引导 归档 GoCD 加入基础密码验证 搭建一套 gocd 的环境 如何使用 gitbook cli工具 React JSX语法再实践 React 组件示例 如何搭建第一个 React 程序 [SpringBoot 指南] 连接 mysql 数据库并进行增删改查测试 [SpringBoot 指南] 如何开始 Springboot 之旅 实现自己第一个接口 LeetCode刷题笔记 VPC笔记 读书的目的 [人文书籍] 把时间当作朋友 Docker基础命令 [技术书籍]JSON必知必会 Docker原理研究 使用Ubuntu 及宝塔搭建Ghost平台 [Linux]Ubuntu安装宝塔面板 2020年年终总结 CURL学习教程 2020年度计划记录 [安全系列]生成ssh证书 [CLI应用学习]时间使用GitHub CLI [linux系列] 修改主机用户名 轻松学CLI应用总章节 [Shell编程系列]基础教程2 [Shell编程系列]基础教程1 [安全相关]使用腾讯云子账号提高账号安全性 [Git教程系列]基础教程5 解决修改错分支的问题 [博客优化]为Wordpress加入伪静态 2020年的12本书籍 [Git系列教程]Git基础操作3 [Git教程系列]基础操作2 [Git教程系列]Git初次配置 [周年总结]脉脉深情,深思志远,周年总结计划 [博客优化]为网站添加SSL证书 [博客优化]Wordpress加入redis服务器提高速度 开篇词 Posts Archive Li Hui Blog
[Git系列教程]基本使用4 Git log的使用
2020-09-13 · via Li Hui Blog

前言

如果只是使用Git 打标签 推送,合并 无法查看相关的信息,那使用Git的作用可就是太无聊了,使用起来也不是很方便。使用Git log 进行日志的查看是非常有必要的,也是必须的。

本文章的主要参考资料是git 的官方教程 https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2

步骤

无参数版本

命令行 这是最简单的显示,同时也是最全的显示

返回结果:此处我们可以清晰地看到所有的提交日志 比如commit记录 commit的作者的名字 邮箱 日期 commit的信息 合并的来源 等等

参数版本

参数对于日志的显示很重要,使用参数可以快速的查找出自己想要查找的内容,尤其是我们只想要一部分信息的时候

命令行

Git 的常用选项[摘自上述网址的表格]

<th style="text-align: left;">
  说明
</th>
<td style="text-align: left;">
  按补丁格式显示每个提交引入的差异。
</td>
<td style="text-align: left;">
  显示每次提交的文件修改统计信息。
</td>
<td style="text-align: left;">
  只显示 --stat 中最后的行数修改添加移除统计。
</td>
<td style="text-align: left;">
  仅在提交信息后显示已修改的文件清单。
</td>
<td style="text-align: left;">
  显示新增、修改、删除的文件清单。
</td>
<td style="text-align: left;">
  仅显示 SHA-1 校验和所有 40 个字符中的前几个字符。
</td>
<td style="text-align: left;">
  使用较短的相对时间而不是完整格式显示日期(比如“2 weeks ago”)。
</td>
<td style="text-align: left;">
  在日志旁以 ASCII 图形显示分支与合并历史。
</td>
<td style="text-align: left;">
  使用其他格式显示历史提交信息。可用的选项包括 oneline、short、full、fuller 和 format(用来定义自己的格式)。
</td>
<td style="text-align: left;">
  <code>--pretty=oneline --abbrev-commit</code> 合用的简写。 [也就是说可以直接在pretty中写或者直接在使用这一行命令]
</td>

示例

返回信息

其中一个比较有意思的就是pretty参数 掐中包含的信息有很多很多,具体如下表格所示。[同样来自那个网站]

<th style="text-align: left;">
  说明
</th>
<td style="text-align: left;">
  提交的完整哈希值
</td>
<td style="text-align: left;">
  提交的简写哈希值
</td>
<td style="text-align: left;">
  树的完整哈希值
</td>
<td style="text-align: left;">
  树的简写哈希值
</td>
<td style="text-align: left;">
  父提交的完整哈希值
</td>
<td style="text-align: left;">
  父提交的简写哈希值
</td>
<td style="text-align: left;">
  作者名字
</td>
<td style="text-align: left;">
  作者的电子邮件地址
</td>
<td style="text-align: left;">
  作者修订日期(可以用 --date=选项 来定制格式)
</td>
<td style="text-align: left;">
  作者修订日期,按多久以前的方式显示
</td>
<td style="text-align: left;">
  提交者的名字
</td>
<td style="text-align: left;">
  提交者的电子邮件地址
</td>
<td style="text-align: left;">
  提交日期
</td>
<td style="text-align: left;">
  提交日期(距今多长时间)
</td>
<td style="text-align: left;">
  提交说明
</td>

此处解释一下提交人和作者的区别 也是我刚刚发现的,一般来说 作者和提交人是一个人 作者是对代码做实际修改的人,而提交者是将代码提交到仓库的人,比如说你对某个其他人的开源项目做了贡献,但是你不是那个项目组的成员,你还没有直接的提交权限,你就需要提交人将你的代码提交到仓库中。

比如我们想使用pretty显示 提交的简写的哈希值 作者的名字 提交说明 就可以使用下面的语句

返回结果

Git log 的使用方法还有很多,熟练的使用可以让我们清晰地看到提交的记录。