存储库与工作区有何不同?

Tan*_*eel 5 git github

恐怕我的问题会被否决或标记为重复。但我仍然想清除我的 git 基础知识。互联网上有文章,但由于我在 git 中只有几天大,我在这里很困惑:

在此处输入图片说明

显然,RepositoryWorkspace是两个不同的东西。所以我用谷歌搜索了两者之间的区别。答案如下: 本地存储库是工作区中的一个目录。 根据 git,我不明白这一点。 是关于 StackOverflow 的类似问题。但我没有很好地理解答案。然后我试着研究这个: 在此处输入图片说明.

请尽可能简单地向我解释这一点(*假设您正在向一个 10 岁的孩子解释这一点)。我可能不明白沉重的 git 行话。

Ann*_*ari 11

仓库是基本的工作目录(工作区)内的git的隐藏文件夹。

工作目录工作区)基本上是你的项目文件夹。 

请记住,这些基本上是同义词:工作区 = 工作目录 = 项目文件夹

让我用一个例子来说明区别。

第 1 步:创建工作目录/工作区

假设您在计算机上本地创建了一个项目文件夹。我要打电话给我的amazing-project

那么你拥有的是这个,一个名为“amazing-project”的项目文件夹。

在此处输入图片说明

在这一点上,amazing-project 不是存储库。现在它只是一个工作目录(工作区)。它只是一个项目文件夹。

第 2 步:创建存储库

现在假设您想将amazing-project 制作成一个存储库,以便您拥有一个本地存储库。 

为此,您需要使用“git init”命令。此命令将在您的惊人项目文件夹中创建一个名为“.git”的隐藏文件夹。这本质上是您的存储库。

现在你所拥有的是:

在此处输入图片说明

第 3 步:深入工作目录和存储库

现在让我们更深入地了解工作区和存储库。我们可以区分两者。

在此处输入图片说明

我们所说的amazing-project文件夹代表我们的工作目录:

在此处输入图片说明

.git 文件夹代表我们的存储库:

在此处输入图片说明

实际上在我们的存储库中有两个重要的地方需要记住。暂存区和提交历史。

在此处输入图片说明

第 4 步:添加文件 

现在让我们添加第一个文件,我将其命名为 example.txt。

所以使用我们的图表是:

在此处输入图片说明

因此,该文件位于我们的工作目录(工作区)中。但是这个文件不是我们存储库的一部分。此文件尚未进行版本控制。

第 5 步:将文件添加到我们的存储库 

为了让这个文件成为我们存储库的一部分并开始进行版本控制,我们需要通过使用“git add”命令将它添加到暂存区来让 Git 知道它。

那么我们所拥有的是:

在此处输入图片说明

'git add' 命令将文件从工作目录复制到暂存区。 

警告:一个常见的误解是文件被移动了,事实并非如此。文件被复制。现在该文件正在被 Git 跟踪。如果您现在提交,它将包含在您的提交中。

希望这可以解释存储库和工作区之间的区别!这个视频这个视频 对解释这个以及这篇 提供了更多细节的精彩文章非常有帮助!


eft*_*ft0 9

他们正在谈论存储库和工作树。因此,在您使用 git 跟踪的普通本地目录上,您拥有工作树(他们正在谈论的工作空间),其中包含构成项目的所有文件......并且其中有一个名为.git. 这是包含所有 git 内容的存储库,使其运行......索引是存储库中的文件之一,它(索引,又名暂存区)是 git 的基本功能之一。