1 切换分支
查看当前分支
$ git branch/ git status
查看所有分支
$ git branch -a
切换分支
$ git checkout <分支名>
2 detached HEAD
若让HEAD指向一个commit id,就会变成detached HEAD,git checkout可达到这个效果;
$ git log
commit 62ed644...
commit 326e815...
commit 11ae892...
$ git checkout 11ae892...
Note: checking out '11ae892...'
You are in 'detached HEAD' state. ...
If you want to create a new branch to retain commits you need, you may do so (now or later) by using -b with the checkout command again.
HEAD is now at 11ae892...
HEAD处于游离状态,此时进行commit操作不会提交到任何分支上;
恢复方法有二:
第一种:
$ git checkout 11ae892
$ git checkout master
第二种:
基于本次建立临时分支
$ git branch temp 11ae892
切换到工作分支并合并代码
$ git checkout master # 切换到之前想要提交的分支上
$ git merge temp # 将temp分支上的代码合并到master分支上
删除临时分支
$ git branch -d temp
3 撤销或丢弃编辑的内容
$ git checkout -- <文件名>
4 小技巧——创建并切换到新分支上
$ git checkout -b <新分支名>