#### Git工作区、暂存区、版本库
> 这是什么鬼???(黑人问号)~
![](https://img.kancloud.cn/89/9c/899c68235dcec0526207a227b9db72a7_683x357.jpg)
* 工作区 -- 我们电脑中看到的目录(文件)。
* 暂存区(索引区) -- 经常跟我们打交道,动不动就闹脾气,英文称为stage(或者叫index),随你怎么叫,你开心就行...
* 版本库 -- 工作区有个隐藏的`.git`文件,这个不算工作区,而是Git的版本库(包含了所有的分支)。
*****
1. 当在工作区`git add .`的时候,会把相应文件添加到暂存区。文件内容也会被写入到`objects`中,同时该对象的ID会被记录在暂存区的索引中。
2. 当使用`git rm --cached `的时候,会直接从暂存区删除文件,工作区则不做出改变。
3. 当执行 `git checkout .` 或者 `git checkout -- <file>` 命令时,会用暂存区或指定的文件替换工作区的文件。这个操作会清除未添加到暂存区已改动的文件。
4. 当执行 `git checkout HEAD .`或者 `git checkout HEAD`命令时,会用HEAD指向的分支中所有的文件替换暂存区以及工作区中的文件。
- 版本控制之Git简介
- Git工作流程
- Git工作区、暂存区、版本库
- Git 指令汇总
- Git 忽略文件规则 .gitignore
- pull request
- HTTP简介
- HTTP - Keep-Alive
- HTTP缓存
- XMLHttpRequest
- Fetch
- 跨域
- HTTP 消息头
- TCP/IP
- TCP首部
- IP首部
- IP 协议
- TCP/IP漫画
- 前端开发规范
- 前端开发规范整理
- 前端未来规划
- HTML思维导图
- CSS思维导图
- 布局
- position,float,display的关系和优先级
- line-height、height、font-size
- 移动端适配
- JS 对象
- JS 原型模式 - 创建对象
- JS 预编译
- 探索JS引擎
- ES