git项目组成介绍
git本地仓库主要有三部分组成,工作区/暂存区/版本库
工作区(working directory / working tree):就是项目的根目录,也就是你能直接看到,编辑的那个目录,这就是工作区
暂存区(staging area):就是一个文件保存在.git目录下,主要存储这下次提交要提交的文件信息,暂存区还有另外一个名称,就是索引(index)
版本库(repository):就是git用于存储自己的元数据,以及文档数据库的地方,默认就是在项目的.git隐藏目录中
协作关系
正常增删改代码都会在工作区里进行
修改后通过git add命令将修改的文件放入暂存区中,准备下一次提交到git版本库中
执行git commit命令将暂存区中的文件作为一个快照保存到git版本库中
状态转换
- 如果版本库刚创建或者工作区中新创建一个文件,还没有执行后git add操作,那么这个时候的状态就是untracked状态
- git add 新文件:new file,此时已经被追踪了,放入了暂存区中 => staged
git commit 新文件:committed,已经被追踪了,放入了git仓库中 => committed
修改那个文件:modified,changes not staged to be committed,没有加入暂存区,被修改的内容仅仅停留在工作区中 => modified
- git add 修改文件:modified,changes to be committed,修改的文件版本被已经加入暂存区 => staged
- git commit 修改文件:committed,修改后的新版本提交到了git仓库中 => committed