1、工作区
工作区就是值每个目录,比如learngit就是一个工作区,对文件的直接修改就是在工作区修改文件。
2、版本库
版本库就是.git文件夹,版本库中存放有暂存区和master分支。
工作区、版本库、暂存区、master分支之间的关系如下图所示:
3、暂存区
git add 命令就是将修改添加到暂存区
3、master分支
在创建版本库时,git自动创建了一个唯一的master分支,git commit命令就是往master分支上提交当前版本。
例子:
再次修改readme.txt文件:
Git is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
再创建一个LISCENSE文件,随便填写内容
用 git status 命令查看仓库中是否有文件被修改
可以看出readme.txt被修改了,LISCENSE还没有被添加到暂存区
添加这两个修改到暂存区:
$ git add readme.txt
$ git add LISCENSE
此时的暂存区:
把暂存区的所有修改提交到master分支:
$ git commit -m "understand how stage works"
此时暂存区和master分支的示意图为