git checkout 详解

1. 切换分支

创建分支: git branch develop
切换新分支:git checkout develop
合并成一句为:git checkout -b develop

2. 恢复工作树文件

git checkout 26a2e80

26a2e80 是一个commit号,这个命令会把index区域和工作区域的内容都更新

git checkout -- README

README是想恢复的文件名,恢复成index区域里面的内容,为什么要加“--”呢,这个是为了告诉Git,这是一个文件而不是一个分支(中间有空格)

Git checkout . 

从index区域恢复所有文件

3. git checkout -- 文件名 的原理

把文件在工作区的修改全部撤销,这里有俩种情况

1)文件修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态
2)已经添加到暂存区后,又做了修改,现在撤销修改回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commitgit add时的状态。

你可能感兴趣的:(git checkout 详解)