如果你想查看git的版本演变历史,可以这样做:

打开Git Bash,切换到项目目录

$ pwd

$ ll

$ cd git-rainbow/

$ ll

$ cd mtxcrm/

$ ls -la

除了命令行方式,还有一种更直观的方式,通过图形界面化工具查看git版本历史。

输入如下命令,打开git历史版本图形界面管理工具

$ gitk

git版本历史图形界面工具分上下两大区域,如下截图所示:

左上角是历史树

点中目录树中任意一个节点,跟该节点背景颜色相同的,右上部区域就是具体的commit信息。右边两个列表分别列举的是,作者信息以及变更时间

当版本历史信息比较多,尤其是分支信息比较多的情况下,看起来就容易迷茫了。我们逐个去查看各个区块。随着我们点选不同的目录树节点,下面的ID信息也在跟着变更

除此之外,Diff以及Tree的信息也跟着变化

右下侧区域除了可以点选Tree,也可以点选Patch。Patch指的是,针对某一次的变更对应的变更集

Patch左下侧对应的Diff是Patch变更集中,全部变更文件的变更信息的列举

切换成Tree这种方式,可以看到,当前commit项目下的文件目录结构

除了展示形式不同外 ,Tree模式下,选中某一个文件,右下侧Diff中展示的是该文件全部内容

Patch模式下,左下侧Diff区域通过+加号告知我们这个文件都增加了哪些内容

之前通过gitlog命令查看版本历史的时候,只有Author作者的信息。咱们gitk不仅有Author作者信息,还有Committer提交者信息,这两者有什么区别吗?

某一次变更的提交既有Author作者又有Committer提交者,Author作者和Committer提交者有什么区别吗?试想,什么情况下,作者和提交者是不同的呢?

比如在master分支中有一次commit,我把它挑出来放到temp分支中,也就是说,把某个分支挑选出来放到另外一个分支中去,这个时候作者和提交者就有可能不同了,也就是说,挑过来之前是有作者的,新生成的commit对应的Committer提交者是你自己,但是内容是从其他分支挑拿来的,也就是git cherry-pick,我自己把别人的分支挑拣过来,在新分支中提交,这个时候,作者Author仍保留挑拣前的作者,也就是说,这种情况下,Author作者和Committer提交者是不同的两个账号。

还有每一次的变更,通常是有父级Parent的,除了哪个没有父级Parent?

以下这个节点只有Child子级,没有父级Parent。因为它是这个仓库中的第一个commit。它没有上级,也就是说它没有父级Parent,它只有子级Child。

然后就是Branches,指的是哪几个Branches分支都包含这个commit

除此之外gitk还有一个功能,就是可以定制查看的内容,依次单击菜单项“View”》“New View”

在如下视图定义窗口Gitk view definition中,勾选All refs全部引用。

什么是全部引用呢?

包括all(local) branches全部本地分支、All tags全部标签、All remote-tracking branches全部远程分支,All tags全部标签指的是打标记的branches分支。

然后点选该窗口的【Apply】、【OK】

我们现在全部的git的操作都是在本地执行的,不涉及远程的情况。

也就是在自己的工作机上查看git版本历史。如下截图所示,这样全部的branches分支信息我们就全部获取到了

还可以点选左上侧目录树中1条commit信息,右键》Create tag添加标签

在创建标签弹窗maketag中,标签名以及消息文本框分别输入信息,点【Create】

如下截图所示,原来的节点名称被标签名称所替代

不会查看GIT版本历史?快收藏这个工具相关推荐

  1. Linux系统在线安装和查看git版本

    在线安装git yum -y install git 查看版本信息 git --version [root@localhost local]# git --version git version 1. ...

  2. 查看git版本的cmd命令

    Git --version

  3. git ssh配置完后拉取代码_CentOS6自带git版本需要用户名才能拉取代码

    问题 当我们在CentOS6操作系统执行git操作,发现拉取代码的时候会出现如下的提示: $ git clone http://xxxxx.giterror: The requested URL re ...

  4. 1git命令的使用,查看git仓库状态,添加文件到git跟踪,git提交,查看git分支,查看git仓库日志信息,切换git分支,解决git分支合并后出现冲突的问题

    1新建一个存储git的文件夹,命令是: toto@toto-K45VD:~$ mkdir gitfolder 2初始化一个git仓库,命令是: toto@toto-K45VD:~$cd gitfold ...

  5. 查看git安装目录_一、Linux和Windows下安装Git

    centos7中安装Git 简单粗暴版 查看是否安装了git git --version #查看git版本信息 如果提示未找到命令,则表示没有安装 如果安装了git,但是版本过低,则使用该命令移除原来 ...

  6. 查看软件版本的cmd命令

    1.查看java版本 java -version 2.查看nodejs版本 node -v 3.查看npm版本 npm -v 4.查看maven版本 mvn -version或者mvn -v 5.查看 ...

  7. centos 7 升级 git 版本(通过安装 ius 源的方式)

    文章目录 查看系统相关信息 查看CentOS的版本号 查看内核版本 查看 git 版本 通过安装第三方 yum 源的方式来更新git 下载对应的 yum 源 安装 yum 源 删除掉已经存在的 git ...

  8. MAC下切换到最新git版本

    首先查看git版本的相应位置 $ which -a git 那么我们回看到目前有两个git信息 /usr/bin/git /usr/local/git/bin/git 然后执行 $ vim .bash ...

  9. 1git命令的使用 查看git仓库状态 添加文件到git跟踪 git提交 查看git分支 查看git仓库日志信息 切换g

    首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的.教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转 ...

最新文章

  1. 计算机组成原理cache命中率
  2. 用sqlSessionFactoryBeanName而不用sqlSessionFactory的原因
  3. Pipelines - .NET中的新IO API指引(一)
  4. 基于Pytorch的NLP入门任务思想及代码实现:判断文本中是否出现指定字
  5. 实例14:python
  6. mysql proxy ro-pooling.lua_MySQL读写分离
  7. oracle database link创建
  8. 鸿蒙系统会有彩蛋吗,华为新系统亮点不断,一个新功能让人欢呼,升级后还有惊喜彩蛋...
  9. 漫谈moosefs中cgi各项的意义
  10. 毕业设计——基于SSM的JAVA图书管理系统(有图书管理前台+后台)
  11. Fortran并行计算的一些例子
  12. 小区水电费管理系统-水电费收费管理系统-社区物业水电缴费管理系统代码
  13. K3 CLOUD库存管理关账与存货核算关账区别
  14. k8s集成containerd,集成crictl工具,集成kata
  15. LL(1)语法分析实验报告
  16. 惠普暗影精灵笔记本电脑 ubuntu系统如何截图
  17. 添加一个pv到vg后,误删新加入的pv,报 pv * not found or rejected by a filter
  18. 1th matlab与遗传算法工具箱
  19. 创业记[01]三人行,初创的激情
  20. linux多线程调用同一个函数解析

热门文章

  1. 数据库关系代数运算除法
  2. guava之限流RateLimiter
  3. Makefile -fPIC 选项
  4. Maven报错Original error: Could not transfer artifact
  5. 【HTML】语义化标签
  6. Java新手小白入门篇 项目 - 深海杀手
  7. python京东抢购手机攻略_Python实现自动上京东抢手机
  8. python机器学习——十次交叉验证训练的数据准备算法
  9. 游戏开发-国外的10 个最佳的独立游戏开发社区网站
  10. Tekton笔记(三)之catalog kaniko