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

如果你想查看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】

在这里插入图片描述

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

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Testfan_zhou/article/details/124313604