无法忽略 gitignore 中的 eclipse 特定文件

Unable to ignore eclipse specific files in gitignore

#   modified:   bar/.classpath
#   modified:   bar/.gitignore
#   modified:   bar/.project
#   modified:   bar/build.gradle
#   modified:   foo/.classpath
#   modified:   foo/.gitignore
#   modified:   foo/.project
#   modified:   foo/.settings/org.eclipse.jdt.core.prefs
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   .gitignore

项目结构如下

project/foo
project/bar
project/.gitignore

我在 project/.gitignore 中添加了以下内容,但它似乎并没有忽略 eclipse 设置文件。

.classpath
.project
.settings

如何从根项目递归地完成这项工作。

您需要从索引中删除这些文件,才能真正忽略它们:

git rm --cached -- foo/.classpath
git rm --cached -- bar/.classpath

git rm --cached -- foo/.project
git rm --cached -- bar/.project

git rm -r --cached -- foo/.settings
git rm -r --cached -- bar/.settings

如果这些文件之前尚未添加并提交到 git 存储库,那么一个简单的 git reset 就足够了:它将取消暂存所有这些文件,并且 .gitignore 规则将立即应用,如下 git status.

所示