#### 1. 本地仓库的组成
本地仓库类似于一个本地SVN服务器,它是由三个部分组成的:
![](https://img.kancloud.cn/90/29/90297b1c171975fb8766c7fc0f0d91d5_818x539.png)
1. Directory:使用Git管理的一个目录,也就是一个仓库,包含我们的工作空间和Git的管理空间。
2. **工作空间(WorkSpace)**:需要通过Git进行版本控制的目录和文件,这些目录和文件组成了工作空间,通俗来说 1. 这部分是你的实际文件,或者代码 2. 除了.git之外的都属于工作区。
3. .git:存放Git管理信息的目录,初始化仓库的时候自动创建。
4. **暂存区(Index/Stage)**:或者叫待提交更新区,在提交进入repo之前,我们可以把所有的更新放在暂存区;这一部分就像是一个缓存区,它保存你对工作目录中文件的改动。
5. HEAD(Local Repo):一个存放在本地的版本库;HEAD会只是当前的开发分支(branch)。
6. **贮藏Stash**:是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。
> 附 请求流程图
![](https://img.kancloud.cn/44/8d/448d0f39b08ed616e8df9e4d154dcd7a_880x702.png)
----