既然我们现在把一切都设置好了,那么我们需要一个 Git 仓库。有两种方法可以得到它:
- 使用
git init
将现有的本地非版本控制目录转换成 Git 仓库 - 使用
git clone
从别处拷贝已存在的 Git 仓库
现有目录中初始化 Git 仓库
如果你需要对现存的未版本控制化的项目进行版本控制,你可以通过如下命令:
1
2
3//项目所在根目录
$ cd <path/to/project>
$ git init初始化后,会在
<project>
目录下会出现一个名为.git
的目录,所有 Git 需要的数据和资源都存放在这个目录中。此时这个.git 只是一个最原始的 Git 仓库骨架,还没有任何项目文件被 git 所追踪。如果想要对这些项目文件开始版本控制,你需要追踪这些文件并初始化一次提交。1
2
3//追踪所有文件
$ git add *
$ git commit -m 'initial project version'这样,项目的所有文件就已经在版本追踪中了。
新建一个指定目录作为 Git 仓库
1
2//新建newrepo仓库
$ git init <newrepo>这会新生成一个 newrepo 目录,并在其中出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。
克隆已有的 Git 仓库
相较其他版本控制工具比如 Subversion 的 checkout,git clone
不仅仅只是拷贝一份工作副本,它还包含了所有的数据:每个文件的所有历史版本。
克隆仓库的命令格式为:
1 | $ git clone <repo> |
如果我们需要克隆到指定的目录,可以使用以下命令格式:
1 | $ git clone <repo> <directory> |
如果你想克隆指定分支:
1 | $ git clone -b <branch> <url> |
克隆含有子模块的仓库:
1 | # 自动初始化并更新仓库中的每一个子模块 |
<repo>
可以有多种传输协议形式:https
,local
,ssh
和git
,这在之后会介绍。
参考:
[1]. Getting a Git Repository
[2]. Git 创建仓库