Git教程学习:04 查看提交历史

这篇具有很好参考价值的文章主要介绍了Git教程学习:04 查看提交历史。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 查看提交历史

在提交了若干更新,又或者克隆了某个项目之后,我们想回顾下提交历史,可使用 git log 命令。

以"simplegit"项目作为示例。运行下面的命令获取项目:

$ git clone https://github.com/schacon/simplegit-progit

Git教程学习:04 查看提交历史,Git教程学习,git

$ cd simplegit-progit/
$ git log

Git教程学习:04 查看提交历史,Git教程学习,git

不传入任何参数的默认情况下,git log 会按时间先后顺序列出所有的提交,最近的更新排在最上面。这个命令会列出每个提交的 SHA-1 校验和作者的名字电子邮件地址提交时间以及提交说明

2 git log 常用选项

$ git log -p -<n>
$ git log -patch -<n>

这条命令会按补丁的格式显示每次提交所引入的差异,加上-<n>可以限制显示的日志条目数。该选项除了显示基本信息之外,还附带了每次提交的变化。

Git教程学习:04 查看提交历史,Git教程学习,git

Git教程学习:04 查看提交历史,Git教程学习,git

$ git log --stat

这个命令可以看到每次提交的简略统计信息,并为git log 附带一系列的总结性选项。

Git教程学习:04 查看提交历史,Git教程学习,git

$ git log --pretty=oneline

git log --pretty这个选项可以使用不同于默认格式的方式展示提交历史。这个选项有一些内建的子选项供我们使用。比如 oneline 会将每个提交放在一行显示,在浏览大量的提交时非常有用。 另外还有 shortfullfuller 选项,它们展示信息的格式基本一致,但是详尽程度不一:

Git教程学习:04 查看提交历史,Git教程学习,git

$ git log --pretty=format:"%h - %an, %ar : %s"

format可以定制记录的显示格式。 这样的输出对后期提取分析格外有用——因为我们知道输出的格式不会随着 Git 的更新而发生改变:

Git教程学习:04 查看提交历史,Git教程学习,git

git log --pretty=format 常用的选项:

选项 说明
%H 提交的完整哈希值
%h 提交的简写哈希值
%T 树的完整哈希值
%t 树的简写哈希值
%P 父提交的完整哈希值
%p 父提交的简写哈希值
%an 作者名字
%ae 作者的电子邮件地址
%ad 作者修订日期(可以用 --date=选项 来定制格式)
%ar 作者修订日期,按多久以前的方式显示
%cn 提交者的名字
%ce 提交者的电子邮件地址
%cd 提交日期
%cr 提交日期(距今多长时间)
%s 提交说明
$ git log --pretty=format:"%h %s" --graph

onelineformat 与另一个 log 选项 --graph 结合使用时尤其有用。 这个选项添加了一些 ASCII 字符串来形象地展示我们的分支、合并历史:

Git教程学习:04 查看提交历史,Git教程学习,git

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(用来定义自己的格式)。
--oneline --pretty=oneline --abbrev-commit 合用的简写。

3 限制输出长度

类似 --since--until 这种按照时间作限制的选项很有用。 例如,下面的命令会列出最近两周的所有提交:

$ git log --since=2.weeks

可以是类似 "2008-01-15" 的具体的某一天,也可以是类似 "2 years 1 day 3 minutes ago" 的相对日期:

$ git log --since=2008-01-15

Git教程学习:04 查看提交历史,Git教程学习,git

还可以过滤出匹配指定条件的提交。 用 --author 选项显示指定作者的提交,用 --grep 选项搜索提交说明中的关键字。

Note 我们可以指定多个 --author--grep 搜索条件,这样会只输出匹配 任意 --author 模式和 任意 --grep 模式的提交。然而,如果你添加了 --all-match 选项, 则只会输出匹配 所有 --grep 模式的提交。

另一个非常有用的过滤器是 -S,它接受一个字符串参数,并且只会显示那些添加或删除了该字符串的提交。假设我们想找出添加或删除了对某一个特定函数的引用的提交,可以调用:

$ git log --S function

最后一个很实用的 git log 选项是路径(path), 如果只关心某些文件或者目录的历史提交,可以在git log选项的最后指定它们的路径。 因为是放在最后位置上的选项,所以用两个短划线(–)隔开之前的选项和后面限定的路径名。

限制 git log 输出的选项:文章来源地址https://www.toymoban.com/news/detail-806660.html

选项 说明
-<n> 仅显示最近的 n 条提交。
--since, --after 仅显示指定时间之后的提交。
--until, --before 仅显示指定时间之前的提交。
--author 仅显示作者匹配指定字符串的提交。
--committer 仅显示提交者匹配指定字符串的提交。
--grep 仅显示提交说明中包含指定字符串的提交。
-S 仅显示添加或删除内容匹配指定字符串的提交。
Tip 隐藏合并提交按照我们代码仓库的工作流程,记录中可能有为数不少的合并提交,它们所包含的信息通常并不多。 为了避免显示的合并提交弄乱历史记录,可以为 log 加上 --no-merges 选项。

到了这里,关于Git教程学习:04 查看提交历史的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Git】—— 版本控制(忽略文件、查看修改内容,撤销未提交的修改、查看历史提交记录)

    目录 一、准备工作 二、忽略文件 三、查看修改内容 四、撤销未提交的修改 五、查看提交记录         前面学习了Git最基本的用法,包括安装Git、创建代码仓库以及提交本地代码。         下面将要学习版本控制。         先选择一个项目,给它创建一个代码仓库

    2024年02月05日
    浏览(40)
  • 怎么使用Git查看项目中代码的提交历史记录?

    怎么使用Git查看项目中代码的提交历史记录? 可以在git上使用下面这段指令 在git上执行完之后,就可以在桌面上看到打印出来的日志文件了 Readme.log日志文件如下: 对指令中的代码进行解释: git log 是git导出指令 format 是需要导出的数据格式,这里是代码提交时间、提交人员

    2024年02月12日
    浏览(37)
  • vscode插件——git分支管理、查看log提交的历史记录

    不辜负曾经那份热爱 当你觉得vscode用的不顺手时,就多找些插件叭❤ 一、Git Graph 1. 安装 选择红框的\\\"扩展\\\",搜索\\\"Git Graph\\\",直接安装即可。 2. 使用 打开源代码管理菜单,会发现右上角有个小分支图标,直接点击打开Git Graph。也可以直接从底部的Git Graph打开。 打开后,可查

    2024年02月11日
    浏览(56)
  • VSCode 如何查看git提交的历史记录或逐行记录

    下载两个插件就行了 Git History GitLens 安装成功之后,任意选择一个文件,你鼠标点击哪一行代码,后面都会提示谁在什么时候做了什么,鼠标悬浮提示上便会直接显示作者,版本,时间,点击作者直接可以发邮件,非常方便呢

    2024年02月12日
    浏览(41)
  • 【软件测试】Git查看commit的提交历史(详细)一点即通...

    查看提交历史 在提交了若干更新,又或者克隆了某个项目之后,如何查看提交历史 官方例子: 运行下面的命令获取该项目: 运行 git log 命令 可以获取到的信息 不传入任何参数的默认情况下,git log 会按时间先后顺序列出所有的提交,最近的更新排在最上面; 会列出每个提

    2024年02月12日
    浏览(31)
  • git命令的基本使用(设置用户名、密码、提交、拉取、回退、分支、查看历史版本等)

    1. 首先就是初始化 git init 命令,然后打开文件显示隐藏文件,就能看到一个.git文件,该文件有就代表git初始化成功了。 2. 设置git用户名和密码,正常一个项目的远程库肯定会有人员权限的,只有开源的项目可以不用设置用户名和密码的:    2.1 用户名设置命令  git config

    2024年02月04日
    浏览(53)
  • 将项目复制到新电脑之后, 无法通过git 进行拉取代码/查看历史提交记录等操作

    将项目代码整体打包到新环境(新电脑), 在idea/pycharm下载好git相关插件并打开项目之后, 通过git拉取代码失败(gitlab/git/gtee) 最近因工作原因需要讲电脑上的代码迁移到新电脑上, 但是将idea以及git插件等配置好之后, 打开项目, 发现无法查看之前的提交记录, 即使点击刷新也无法查

    2024年02月04日
    浏览(58)
  • 【Git教程】(三)提交详解 —— add、commit、status、stach命令的说明,提交散列值与历史,多次提交及忽略 ~

    在Git 中,提交无疑是最重要的概念了。Git 管理的是软件版本,而版本库中的版本是以 提交 的形式保存的。某一次的提交的覆盖范围通常是整个项目,即通过一次提交,该项目中的每个文件就都被存进了版本库中。 下面,我们可以通过 git log --stat -1 命令来看一下提交中究竟

    2024年03月12日
    浏览(59)
  • [GIT] GIT拆分仓库--不丢git提交历史记录

    如果你的代码仓库里有多个目录,你想把其中一个目录拆分出去变成一个独立的代码仓库。重要的一点是拆分的过程中要保留git提交历史记录。 进入根目录后,快速运行 ls 终端命令以确保列出所有子目录。 利用命令 git log 或 git log --onelist |wc  查看你的提交的信息和提交了多

    2024年02月09日
    浏览(70)
  • git拉取历史提交的代码

    我们在写项目时,通常提交很多次代码,如果我们想拉取历史commit的某次代码,该如何做呢? 首先:将整个代码拉取到本地 接着,查看提交日志: 可以查看到黄色的commit的哈希值。 再创建新的分支并切换到新分支 最后,输入代码

    2024年03月23日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包