Git告诉我,根据我使用的命令,正在跟踪和跟踪相同的文件

时间:2013-08-05 22:37:06

标签: git

当我使用

  

git status

我给出了一个没有跟踪的所有文件和目录的列表

.idea/
src/main/java/edu/mason/insf/ann/annUML.uml
target/

然而,当我尝试结账到另一家分店时,却告诉我:

error: The following untracked working tree files would be overwritten by checkout:

        target/classes/...

继续列出目标文件夹中的一堆文件(未被跟踪)。

当我尝试删除文件时,无论如何都要使用

购买
git rm target/classes/...

git checkout target/classes

我收到以下错误

fatal: pathspec 'target/classes/...' did not match any files.

Git实际上告诉我正在跟踪同一个文件,而不是同时跟踪。它不会让我从我的工作树中删除该文件,它也不会让我切换分支,因为这个未跟踪文件的更改可能会被覆盖。

有人可以解释发生了什么吗?

1 个答案:

答案 0 :(得分:2)

在您当前已签出的提交中未跟踪文件,但在尝试签出的提交中 进行跟踪。 Git不知道你的未跟踪副本是否有重要的变化,因此它拒绝用提交中的副本破坏它们。

git rm失败,因为它对索引中的跟踪文件进行操作。这些文件未跟踪,因此不在索引中,因此无法对它们进行操作。

要解决此问题,请在确认您未对要保留的内容进行任何更改后,使用rm git rm)删除文件。