因为gitignore没有结账

时间:2013-02-05 12:06:47

标签: git gitignore git-checkout

我在git下有一个项目。在我的gitignore文件中,我有一个文件夹文件夹/我不想让git关心。问题是,每次我想要签出一个分支时,我都会被告知错误:以下未跟踪的工作树文件将被checkout覆盖:

错误:以下未跟踪的工作树文件将被checkout覆盖: 文件夹/ somefile 文件夹/子文件夹/ somefile ...

所以我搬走了文件夹/,再次提交,然后收回我的git仓库中的文件夹/。但为什么这条消息总是出现? (在我的.gitignore中,我有一行:文件夹/)

2 个答案:

答案 0 :(得分:1)

您收到此消息,因为您在将该文件夹添加到folder/之前提交了.gitignore内的文件。

这意味着,虽然您的.gitignore中有该文件夹,但它已经在您的存储库中,因此将被检出,就像所有其他文件一样。

检查 中的文件时使用

.gitignore,而不是检查 out 时的文件。

如果要从git存储库中删除folder/,可以通过发出命令git rm folder/来执行此操作。

答案 1 :(得分:1)

您已经检出了一些文件/文件夹,大概是在您将它们添加到.gitignore之前提交的。

使用git rm folder\ --cached从索引中删除它们,然后重试 - 您不应收到警告。