Git 学习(三)Git 创建版本库

获取 Git 仓库

什么是 Git 仓库呢,仓库又名版本库,我们可以把他理解为一个文件夹。这个文件夹里的所有东西都需要被 Git 给管理起来,对立面每个文件的修改、编辑、删除都将被 Git 记录,以便于任何时刻追踪历史或者在将来某个时刻可以“还原”。

有两种方式来创建 Git 仓库

  1. 在现有项目或目录下导入所有文件到 Git 中
  2. 从一个服务器克隆一个现有的 Git 仓库

我们日常开发中都是用第二种来创建。

在现有目录中初始化仓库

首先需要在一个地方新建一个空目录比如在 D 盘新建了一个 gitTest 目录

Git 学习(三)Git 创建版本库

在此目录中打开 Git 控制台通过 git init 命令把这个目录变成Git可以管理的仓库

$ git init
Initialized empty Git repository in D:/gitTest/.git/

运行完这个命令后将创建一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件是 Git 来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把 Git 仓库给破坏了。如果没有看到需要设置隐藏文件夹为可见,这样就能看到了。

但是,在这个时候,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。

克隆现有的仓库

如果你想获得一份已经存在了的 Git 仓库的拷贝,比如说,你想拉取公司或其他地方的项目,这时就要用到 git clone 命令。

$ git clone https://github.com/libgit2/libgit2

这会在当前目录下创建一个名为 “libgit2” 的目录,并在这个目录下初始化一个 .git 文件夹,从远程仓库拉取下所有数据放入 .git 文件夹,然后从中读取最新版本的文件的拷贝。 如果你进入到这个新建的 libgit2 文件夹,你会发现所有的项目文件已经在里面了,准备就绪等待后续的开发和使用。

提交文件到仓库

现在我们需要在对应的仓库目录下新建一个文件,比如 readme.md 定要放到 gitTest(你新建的仓库) 目录下(子目录也行),因为这是一个 Git 仓库,放到其他地方 Git 再厉害也找不到这个文件。

Git 学习(三)Git 创建版本库

提交文件到仓库需要两步

1.用命令 git add 告诉 Git,把文件添加到仓库

$ git add readme.md

执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。

2.用命令 git commit 告诉 Git,把文件提交到仓库

$ git commit -m "提交 readme"
[master (root-commit) 1f26829] 提交 readme 1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 readme.md

解释一下 git commit 命令,-m 后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。以后只要发现 git 命令后面带一个 - 说明是简写模式 -m m 就是 message 的意思,如果发现后面带两个 --xxxx 那就是一定要写完整一个单词。

git commit 命令执行成功后会告诉你,1 file changed:1 个文件被改动(我们新添加的 readme.md 文件);

为什么 Git 添加文件需要 add,commit 一共两步呢?因为 commit 可以一次提交很多文件,所以你可以多次 add 不同的文件比如

$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."
上一篇:Linux下who命令之C语言实现


下一篇:笔试常考的Java基础