工作区、暂存区与版本库

本节中,笔者会为读者简单介绍一下Git中最基本的概念:仓库、版本库工作区以及暂存区,并且力求让读者有一个初步的理解。

一些简单的概念

Git是一个分布式版本管理系统,所谓分布式是指在使用同一仓库的每一台电脑中都有一个完整的版本库

  • 上面提到的仓库,是Git管理文件的一个单位;换句话说,Git以一个仓库为单位进行版本管理。实际上,一个仓库就是一个文件夹,在这个文件夹下的所有文件都被Git所管理(当然有一些例外情况,不过现在不用理会)。

  • 上面提到的版本库,顾名思义就是记录了Git仓库中的文件的版本信息的地方。你对文件所做的一切(新建文件、修改文件、删除文件)都会被记录在版本库中。实际上,版本库也是一个文件夹,而且是一个固定在仓库目录下的名为.git的文件夹。你可能看不到它,因为它往往是一个隐藏文件夹,需要在你使用的操作系统中做出对应的特殊处理才能看到。

仓库中除了版本库(.git文件夹)之外,其余的文件和文件夹都属于工作区,Git会记录工作区中所有文件的变化。

当你修改工作区中的文件时,Git会把你对文件的修改作为差异检测出来,但是并不做任何操作,你需要通过使用指令来将修改后的差异保存到暂存区,进而提交保存进版本库中。

对应概念与指令

上述过程其实涉及到一些Git指令的操作,我们来将一些概念和指令做一个简单的对应:

如果读者知道笔者接下来在说些什么,那么大可以自己在命令行中简单练手试一下,不知道笔者在讲什么也没关系,本教程的重点并不在此。

首先,要想将一个文件夹中的文件纳入版本管理,你需要建立一个Git版本库,而建立版本库的方法很简单:在仓库目录下执行指令git init即可初始化一个版本库;

现在你拥有了一个仓库(整个文件夹)、一个版本库(文件夹中的.git文件夹以及其中的内容)和一个工作区(文件夹中除了.git文件夹以外的一切),你可以尝试修改工作区中的文件,git会记录这些差异。记得吗?你需要将这些差异添加到暂存区,然后提交保存进版本库中,那么怎么做呢:

  • 你可以使用git add指令来将文件中的差异添加到暂存区中

  • 之后你可以使用git commit指令来将已经在暂存区中的差异提交到版本库中

完成了上述步骤之后你就完成了对一次文件更改的版本管理。

PS:对于上述内容,读者仅需对整个版本的管理流程有一个大致的理解即可,在后续的章节中,笔者会通过场景案例帮助读者对版本管理中的流程和功能有一个更加深刻的认知。

results matching ""

    No results matching ""