情景
我签出一个旧分支 - 一个文件少于我的活动分支的分支。我觉得这是很常见的事情。
当我使用 git status 时,我注意到以下简单的命令对会留下标记为“已删除”的文件列表。
git checkout (比如说这个分支包含文件A,B,C) git checkout (包含A,B,C,D和E)
此时 git status 会将D和E显示为从我的工作树中删除。值得注意的是, git checkout -f 显示我的工作目录是干净的(正如我没有做出任何有意的更改时所期望的那样)。
问题:
基于git checkout的文档:
更新工作树中的文件以匹配索引或指定树中的版本。
我希望指定< active-branch> tree-ish会导致我的工作目录更新到那棵树(即我的工作目录没有变化)。
为什么我会看到已删除的文件,除非我使用 -f ?