Gitignore 不适用于 .xml 文件和 /target 目录

Gitignore doesn't work on .xml files and /target directory

我有两个 .gitignore 文件,因为一个在过去不起作用,我不得不创建第二个;他们看起来:

/target/
.idea/

.gitignore.gitignore 看起来:

*/target/**
/target/**
!.mvn/wrapper/maven-wrapper.jar

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
target/

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
.idea/

### NetBeans ###
nbproject/private/
build/
nbbuild/
dist/
nbdist/
.nb-gradle/

它仍然包含 .gitignore 中的那些文件 - 为什么?

.gitignore 仅适用于 未跟踪的 文件。如果文件已经是 HEAD 修订版的一部分,则不会考虑 .gitignore。如果你想从以前的修订中删除文件,你应该考虑重写历史以从你的分支历史中删除它们。