git仍然显示添加到.gitignore后修改的文件

我将这添加到.gitignore文件

.idea/* 

但无论如何,状态是:

 # modified: .gitignore # modified: .idea/.generators # modified: .idea/dovezu.iml # modified: .idea/misc.xml # modified: .idea/workspace.xml 

我究竟做错了什么 ? 我甚至将.idea / *添加到全局〜/ .gitignore_global,但是git状态,无论如何显示我:

 # modified: .gitignore # modified: .idea/.generators # modified: .idea/dovezu.iml # modified: .idea/misc.xml # modified: .idea/workspace.xml 

你的.gitignore正在工作,但它仍然跟踪这些文件,因为它们已经在索引中了。

要停止这个,你必须这样做: git rm -r --cached .idea/

提交时, .idea/目录将从您的git存储库中删除,以下提交将忽略.idea/目录。

PS:您可以使用.idea/而不是.idea/*忽略一个目录。 您可以在.gitignore手册页上find关于模式的更多信息。


来自git-rm手册页的有用引用

 --cached Use this option to unstage and remove paths only from the index. Working tree files, whether modified or not, will be left alone.