git checkout

git checkout命令用于切换分支或检出文件.

git checkoutgit最常用的命令之一, 同时也是一个很危险的命令, 因为这条命令会重写工作区.

切换分支

  • git checkout [<branch>] - 切换分支

    切换到指定的分支(使HEAD指向新的分支), 同时会检出commit中的文件版本到工作区暂存区.

  • git checkout -b [<branch>]

    创建一个新的分支, 并切换到该分支.

注解

使用git checkout切换分支时, 会同时检出分支中的文件快照到工作区和暂存区. 如果工作区或暂存区中的当前文件状态和检出的文件状态有冲突, 则切换失败并提示先提交修改; 如果没有冲突, 则无需先提交工作区和暂存区中的修改.

检出文件

  • git checkout -- <file> ...

    从暂存区检出指定的文件到工作区.

    • git checkout -- .git checkout .表示检出暂存区中的所有文件都工作区.
  • git checkout [<branch>] <file> ...`

    从指定的分支中检出指定的文件(只检出文件, 并不切换分支)到工作区和暂存区.

    • git checkout [<branch>] .表示从指定的分支中检出所有的文件到工作区和暂存区.