1、git checkout branch
检出branch分支,更新HEAD以指向branch分支,以及用branch指向的树更新暂存区和工作区.
2、git checkout
汇总显示工作区,暂存区与HEAD的差异(列出修改过的文件)
3、git checkout HEAD
同上
4、git checkout -- filename
用暂存区中的filename文件来覆盖工作区中的filename文件.相当于取消自上次执行git add filename以来(如果执行过)的本地修改
5、git checkout branch -- filename
维持HEAD的指向不变.用branch所指向的提交中的filename替换暂存区和工作区中相应的文件.会将暂存区和工作区中的filename直接覆盖
6、git checkout -- .或者git checkout .
会取消本地所有修改,相当于用暂存区的所有文件直接覆盖本地文件.
7、git commit_id filename
把filename的恢复为commit_id时的版本,commit_id是git commit时生成的sha值