记录一些使用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 时填写的日志信息