65.9K
CodeProject 正在变化。 阅读更多。
Home

Git:从零开始创建仓库

starIconstarIconstarIconstarIconstarIcon

5.00/5 (6投票s)

2015年12月26日

CPOL

1分钟阅读

viewsIcon

11306

本技巧描述了在不使用 `git init` 命令的情况下创建 git 仓库的步骤。

引言

我相信这个技巧对所有使用 git 并希望更多地了解 git 内部细节的人都会有所帮助。

我的目标是创建一个最小的有效“.git”目录。 在我的步骤结束时,“git status”命令应该对“.git”目录的手动结构感到满意。

背景

在使用 Git 时,了解内部细节非常有帮助。

创建仓库

首先,创建“repo”目录。 在此目录内部,我们将创建几个文件夹和一个文件。 之后,git 就会满意了。

在开始之前,我们使用“status”命令询问 git 关于“repo”的情况。

git status

我们得到以下回复

fatal: Not a git repository (or any of the parent directories): .git

正如你所见,git 不满意。

所以我们将尝试让 git 对我们的目录感到满意。

  1. 在“repo”内部创建“.git”目录。 我们的仓库将位于此处。
  2. 在“.git”内部创建“objects”目录。 这个目录将包含我们的提交。
  3. 在“.git”内部创建“refs”目录。 这个目录将包含分支。
  4. 最后但并非最不重要的一点。 在“.git”内部创建文件“HEAD”,内容为“ref: refs/heads/master”。 这是指向当前分支的指针。

这就是我们所需要的全部。

再次询问 git 关于“repo”。

git status

Git 的回复是:

On branch master
Initial commit
nothing to commit (create/copy files and use "git add" to track)

Git 现在满意了!

我们已经创建了 git 仓库,而没有使用“init”命令。

历史

  • 2015年12月27日 初始版本
© . All rights reserved.