假设我创建了一个文件
file.txt
(但并未提交),然后输入git checkout HEAD
或git checkout HEAD .
。 我以为git checkout
基本上会用给定的提交中的快照替换你当前工作目录中的文件,所以我认为这将删除file.txt
。 但它并没有删除。为什么?
git checkout
不会影响未跟踪的文件。 - Sergio Tulentsevgit checkout
仍会修改与上次提交时不同的文件。 - Jack Mgit checkout
填充的,所以现在索引中的内容是快照中的内容。但是,如果您更改索引(例如使用git rm --cached
或git add
),则会更改跟踪文件的集合。还要注意,git checkout <tree-ish> <paths>
命令与git checkout <branch>
命令非常不同。一些人(包括我自己)认为它应该使用不同的拼写,即根本不以git checkout
开头。 - torek