2014-09-12 187 views
1

这里是我的.gitignore文件的内容的Git忽略不忽略一个文件,但所有文件

# Compiled source # 
################### 
*.com 
*.class 
*.dll 
*.exe 
*.o 
*.so 

# OS generated files # 
###################### 
.DS_Store 
.DS_Store? 
._* 
.Spotlight-V100 
.Trashes 
ehthumbs.db 
Thumbs.db 

#Eclipse/Intellij 
.classpath 
.project 
.settings/ 
target/ 
*.iml 
.idea/ 

基本上所有我想要的是忽略目录.idea和它的所有内容。但是,总是有一个文件不断弹出。我不知道为什么。

文明/ .idea/workspace.xml

这个文件来保存所有的时间,我不知道为什么它没有被忽略!

+3

因为您已经将它添加到索引了吗? – 2014-09-12 18:56:07

+1

甚至有人提出过? – 2014-09-12 19:00:39

回答

2

.gitignore仅适用于新文件。如果该文件已被跟踪,你需要告诉混帐不这样做下去:

git rm .idea --cached 

如果你不能确定是否被预计将忽略跟踪或没有文件,只是从删除所有文件索引,然后将它们添加回来 - 当文件被放回到索引中时,git将使用.gitignore

git rm -r . --cached 
git add . 
+0

Aaaah!是的,这确实是问题所在。我觉得它很聪明,理解它应该忽略它。好吧。现在至少我知道 – 2014-09-12 19:07:00

+0

运行rm git后,它们被标记为已删除,git希望我提交它。猜猜这很好... – 2014-09-12 19:08:57

+0

@Shervin - 是的,没关系。一定要添加'--cached'选项,否则它会从工作副本中删除文件。 – BroiSatse 2014-09-12 19:11:00