📜  Git – git-show 命令行实用程序

📅  最后修改于: 2022-05-13 01:58:11.066000             🧑  作者: Mango

Git – git-show 命令行实用程序

Git 是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小型项目到大型项目的所有项目。 Git 依赖于软件的分布式开发,其中多个开发人员可以访问特定应用程序的源代码,并且可以修改其他开发人员可能看到的更改。最初由 Linus Torvalds 于 2005 年为 Linux 内核开发设计和开发。

git 显示

我们在日常编码活动中使用 Git,然而,Git 的许多概念仍然不为人们所知。一个这样的命令是git show。在开始了解 git show 是什么之前,让我们使用git init命令初始化我们的本地目录并使其成为 git 存储库,如下所示:

使用 Git 时,我们会看到.git文件夹,其中包含许多子目录,其中一个子目录是.git/objects目录,其中包含有关不同类型对象的信息,例如blob 、 tree 、 commitstags 。

Blob Object - stores the contents of the file
Tree Object - contains a list of all files in our repository with a pointer to
              the blob object assigned to them
Commit Object - points a pointer to its tree object
Tag Object - show the tag message and other objects 
             included in the tag(object name, object type, tag name)

要查看这些对象的扩展详细信息,我们使用命令git show。让我们借助示例进一步了解该命令。

我们创建了一个名为demo.txt的文件,在其中写了 2 行,并提交了更改。

现在让我们使用git show命令,看看我们使用该命令获得的所有信息。

git show 

我们可以看到,当我们使用git show命令时,我们得到了很多信息。从上图中,我们可以推断出git show命令向我们展示了两件事

  • 第 1 部分:提交消息和 HEAD 指向的指针。
  • 第 2 部分:可以看到的第二件事是文件的不同版本。

让我们深入讨论这两个部分,如下所示:

第1部分

第一部分给我们的结果与我们输入git log命令时的结果相同,该命令告诉我们提交 id 的提交历史。

HEAD -> master 
Tells us about the pointer where the HEAD is currently pointing.

由于这个提交有一个指向 HEAD 的指针,让我们看另一个git show示例,其中提交没有指向 HEAD 的指针。

我们在这里没有得到HEAD->master ,因为这个提交没有指向 HEAD。

第2部分

  • 这里的 diff 表示指向 HEAD 的文件之间的差异。
  • a/demo.txt 和 b/demo.txt 显示文件 demo.txt 的 2 个版本。

可以通过在各种提交 ID 上尝试来尝试检查 git show 命令。