Git 系列之「Git 初体验」

2018-03-27  本文已影响15人  豆豆先生的小屋
安装 GIT

Git 是一个工具,要想用的话必须的先安装才可以。类似于你做 java 开发的话需要安装 JDK。

$ apt-get install git

最后一步请配置下你的 Git 工作环境。输入如下命令即可:

$ git config --global user.name "your name"
$ git config --global user.email "example@example.com"

每次 Git 提交时都会引用这两条信息 ,说明是那个用户提交了更新。注意 --global 参数,表示你这台电脑上所有的 Git 仓库都会默认使用这个配置的用户信息。如果要在某个特定的 Git 仓库使用其他信息,只要去掉 --global 选项重新配置即可。

如何学习

学习 Git 有很多图像化操作界面可供选择,但我还是建议你从命令行开始,这样子你会深刻理解每一步操作的意义,只有知其所以然了才会更少的犯错误,而当你熟悉了命令行之后任何图形界面操作当然不在话下。而且你不觉得敲命令挺酷的嘛!嘚瑟.jpg。

常用命令

首先先创建一个空的文件夹 git_test

$ mkdir git_test
$ cd git_test/

温馨提醒:为了防止各种意外,Win 用户请确保你的文件夹绝对路径不包含中文。

下面我们来执行一个命令来看看。

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

意思是说当前目录不是一个 Git 仓库。

那我们就把该目录初始化为一个 Git 仓库。

$ git init
Initialized empty Git repository in F:/doc/git_test/.git/

空的仓库,同时在目录下多了一个 .git 的隐藏目录。这个目录是用来记录当前版本库的信息的,绝对不可以动这个目录里面的文件

再次执行 git status

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

位于 master 分支上,这个分支是 Git 默认帮我们创建的,关于分支的概念后面会讲。而且告诉我们没有东西可以提交,创建或者复制文件到该目录然后使用 git add 命令告诉 Git 追踪版本信息。

那就创建一个新的文件吧。

touch hello.md

再次执行 git status

$ git status
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        hello.md

nothing added to commit but untracked files present (use "git add" to track)

提示 hello.md 是 Untracked file,也就是这个文件还没有被 Git 追踪。

$ git add hello.md

$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   hello.md

提示说等待被提交, 可以使用 git rm --cached <file> 命令来移除缓存。

$ git commit -m 'fitst commit'
[master (root-commit) aa415b2] fitst commit
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 hello.md

提示说一个文件被改动,0 行被添加,0 行被删除。因为 hello.md 是空文件嘛。-m 后面跟的是本次提交的说明,最好是有意义的,以便后续可以快速方便的查找更改记录。

$ git status
On branch master
nothing to commit, working directory clean

位于分支 master ,没有文件等待被提交,干净的工作区。

总结

为啥添加一个文件到版本库需要两步呢,缓存区的存在是 Git 跟其他版本控制系统最大的区别之一,理解了缓存区,就可以深刻理解后面的很多操作。另外,可以多次执行 git add <file> 添加多个文件到缓存区,然后一次性提交即可。

上一篇下一篇

猜你喜欢

热点阅读