记录一些使用Git时的一些想法
区的概念
当 clone 仓库代码到本地后四个区相同
 当编辑代码后,工作区 与其余三个区不同
 当使用 add 将修改的代码暂存后,索引区与 工作区 相同
 当使用 commit 将修改的代码提交后,仓库区 与 索引区 和 工作区 相同
 当使用 push 将修改的代码推送后,四个区的信息又再次相同
工作区 Workspace
 从远程区获取代码使用 pull(fetch + checkout)
 从仓库区获取代码使用 checkout
 向索引区添加代码使用 add
索引区 Index / Stage
 向仓库区提交代码使用 commit
 移除代码到工作区 reset
仓库区 Repository
 从远程区获取代码使用 fetch/clone
 向远程区推送代码使用 push
 从索引区得到代码使用 commit
 向工作区检出代码使用 checkout
远程区 Remote
 从仓库区获取代码使用 push
特殊文件
FETCH_HEAD
 每个分支对应一行,记录最后一次 fetch/pull 下来对应分支的最新 commitID
HEAD
 记录当前分支,ref: refs/heads/<br>
ORIG_HEAD
 当执行 reset/merge/rebase 操作时记录原本 HEAD 值
COMMIT_EDITMSG
 记录最后一次 commit 时填写的日志信息