【Git索引index解析】Git索引是工作目录和存储库之间的临时区域。它用于构建要一起提交的一组更改。为了更好地了解Git索引, 然后首先了解工作目录和存储库。
文章图片
Git中可以放置文件更改的三个位置, 分别是工作目录, 暂存区和存储库。为了首先更好地了解Git索引, 让我们快速浏览一下这些地方。
工作目录:
当你处理项目并进行一些更改时, 你正在处理项目的工作目录。该项目目录在计算机的文件系统上可用。你所做的所有更改将保留在工作目录中, 直到将它们添加到登台区域。
登台区域:
暂存区可以描述为下一次提交的预览。当你创建git commit时, Git会将登台区域中的更改作为新的提交。你可以在登台区域中添加和删除更改。暂存区域可以视为git存储更改的实际区域。
虽然, Git没有专用的暂存目录, 它可以在其中存储一些表示文件更改(blob)的对象。取而代之的是, 它使用一个名为index的文件。
仓库:
在Git中, 存储库就像GIt用来存储一组文件和目录的元数据的数据结构。它包含文件的集合以及对这些文件所做的更改的历史记录。 Git中的存储库被视为你的项目文件夹。存储库包含所有与项目相关的数据。不同的项目具有不同的存储库。
你可以通过git status命令检查索引中的内容。 git status命令允许你查看已暂存, 已修改但尚未暂存以及完全未跟踪的文件。暂存文件意味着它目前在索引中。请参见以下示例。
句法:
$ git status
输出:
文章图片
在给定的输出中, status命令显示索引。
正如我们前面提到的, 索引是文件, 而不是目录, 因此Git不在其中存储对象。而是将有关每个文件的信息存储在我们的存储库中。该信息可能是:
- mtime:这是最后一次更新的时间。
- 文件:这是文件的名称。
- Wdir:工作目录中文件的版本。
- 阶段:索引中文件的版本。
- 回购:存储库中文件的版本。