ILD

git checkout
作者:Herbert Yuan 邮箱:yuanjp@hust.edu.cn
发布时间:2018-5-20 站点:Inside Linux Development

git checkout,切换分支或者恢复工作区文件。


语法

1
2
3
4
5
6
7
git checkout [-q] [-f] [-m] [<branch>]
git checkout [-q] [-f] [-m] --detach [<branch>]
git checkout [-q] [-f] [-m] [--detach] <commit>
git checkout [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
git checkout [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>…
git checkout [<tree-ish>] [--] <pathspec>…
git checkout (-p|--patch) [<tree-ish>] [--] [<paths>…]


描述

根据索引和指定树来更新工作区文件,如果没有给定路径,那么HEAD也被更新为指定的分支。


git checkout branch

切换到branch分支,更新索引和文件,将HEAD指向branch,本地修改被保留。

如果branch不存在,但是存在一个tracking branch,等价于

git checkout -b branch --track <remote>/<branch>

可以省略branch,等于重新checkout当前branch


git checkout -b|-B <new_branch> [<start point>]

创建新分支,并且换到新的分支,可以使用--track或者--no-track,使用--track选项没有-b选项也是创建分支。


git checkout --detach [<branch>]

git checkout [--detach] <commit>

创建一个DETACHED HEAD。


git checkout [<tree-ish>] <pathspec>

从索引或指定tree中替换指定路径的文件。如果tree-ish给定了,则更新索引和工作区中pathspec指定的内容。


选项:

-f

--force

切换分支时,即使index和工作区和HEAD不同,也继续进行,用来抛弃任何本地的改动。

当从索引checkout路径时,即使有未合并的条目,也不要失败。


Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.