📜  Git 工作目录中文件的状态

📅  最后修改于: 2021-10-24 12:47:57             🧑  作者: Mango

Git 是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的所有项目。 Git 依赖于软件分布式开发的基础,其中多个开发人员可以访问特定应用程序的源代码,并可以修改其他开发人员可能看到的更改。

任何 Git 项目都将包含三个部分:Git 目录、工作树和暂存区。 Git 目录包含所有文件和更改的历史记录。工作树包含项目的当前状态,包括所做的任何更改。暂存区包含已标记为包含在下一次提交中的更改。

工作目录中的每个文件都可以处于以下两种状态之一:

  • 跟踪
  • 未追踪

未跟踪状态

未跟踪的文件是工作目录中不在最后一个快照中且不在暂存区中的任何文件。每当在工作目录中添加以前不存在的新文件时,它都被视为未跟踪文件。这是因为 Git 将其视为上一个快照(提交)中没有的文件。
让我们用一个例子来看看这个,假设我们在我们的存储库中添加新文件 example.html并运行 git status命令来查看文件的状态。它显示了包含 example.html 文件的未跟踪文件列表。

跟踪状态

跟踪文件是上次快照中的文件。这些是 Git 知道的文件。每个轨道文件可以处于三个子状态之一,已修改、已暂存或已提交。

修改的

处于修改状态的文件意味着已经对其进行了尚未提交的更改。更改可能是添加、修改或删除文件的内容。这些文件将包含在下一次提交中,但将包含在各自的新形式中。
让我们修改我们跟踪的 example.html 文件并运行 git status 命令。

分期

处于暂存状态的文件意味着它在上次提交中不存在(例如新创建的文件),或者它是用户告诉 git 包含在下一次提交中的“修改过的”文件。使用git add命令将文件添加到暂存状态。可以将两种类型的文件添加到暂存状态:未跟踪或修改。
让我们暂存我们未跟踪的 example.html 文件并运行 git status 命令。

现在,让我们暂存修改后的跟踪 example.html 文件并运行 git status 命令。

坚定的

处于已提交状态的文件意味着对其所做的更改安全地存储在 Git 目录的快照中。使用 git commit命令提交文件。此命令在 Git 目录中创建一个新快照,并向我们显示所做更改的一些统计信息。

让我们提交我们在 example.html 文件中所做的更改。