Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git checkout.如何工作_Git_Github - Fatal编程技术网

git checkout.如何工作

git checkout.如何工作,git,github,Git,Github,我使用了git checkout.从我的工作索引中删除本地更改 有人知道git在引擎盖下做什么吗™? 更新工作树中的文件以匹配索引或指定树中的版本。如果没有给出任何路径,git checkout还将更新HEAD以将指定的分支设置为当前分支 git checkout <branch> git签出 要准备工作,请通过更新工作树中的索引和文件,并将头部指向分支来切换到它。保留对工作树中文件的本地修改,以便将其提交到工作树 如果找不到,但在一个具有匹配名称的远程(调用它)中确实存在跟踪分

我使用了
git checkout.
从我的工作索引中删除本地更改


有人知道git在引擎盖下做什么吗™?

更新工作树中的文件以匹配索引或指定树中的版本。如果没有给出任何路径,git checkout还将更新HEAD以将指定的分支设置为当前分支

git checkout <branch>
git签出
要准备工作,请通过更新工作树中的索引和文件,并将头部指向分支来切换到它。保留对工作树中文件的本地修改,以便将其提交到工作树

如果找不到,但在一个具有匹配名称的远程(调用它)中确实存在跟踪分支,则将其视为等效于

$ git checkout -b <branch> --track <remote>/<branch>
$git checkout-b--跟踪/
您可以省略,在这种情况下,该命令退化为“checkout the current branch”,这是一个美化的no op,具有相当昂贵的副作用,仅显示当前分支的跟踪信息(如果存在)

git checkout <branch>
在这里阅读更多

为了防止数据丢失,git checkout在需要更改带有未老化更改的文件时会给出错误信息。


换句话说,如果您有两个具有不同版本文件的分支,并且您编辑了该文件,然后尝试切换到另一个分支,您将得到一个错误,因为它将拒绝用另一个分支的版本替换您未保存的更改。

git checkout。
将修改工作目录。在
git签出之前和之后运行
git diff--cached
表明它根本不会更改索引。更多信息:
git签出的全部要点。
是使工作目录看起来像索引。使用
git reset
删除索引中的更改。