gitignore 不会忽略我的 .settings/ 目录(由 eclipse 创建)

gitignore won't ignore my .settings/ directory (created by eclipse)

git状态:

Untracked files:
(use "git add <file>..." to include in what will be committed)
    .settings/

我已经在我的 .gitignore 文件上尝试了以下变体,但似乎没有任何效果:

.settings/

*settings*

*.settings/

.settings/*

我在使用 .gitignore 时从来没有遇到过这么大的麻烦,它通常都能正常工作。我一定是在做什么蠢事。

注意:我的 .gitignore 文件中包含的内容不仅仅是这一行(所有其他行都可以正常工作)。

对我来说,解决方法是将 .settings/ 移动到 .gitignore 文件的末尾。最初我只是将它作为 .gitignore 文件的第一行。不知道为什么这很重要。有人有解释吗?

我的 .gitignore 文件在 .settings 之前有一个前导正斜杠:

/.settings

你没有那个斜杠的地方。尝试添加斜线

我以为我遇到了同样的问题。事实证明,我一直在 git status 中看到 .settings/ 的原因是因为其他人已经将 .settings/ 提交给 repo。因此,.settings/ 一直出现在 Changes not staged for commit 文件列表下,因为我的 IDE touched/changed 这个目录。

您希望 .settings/ 对 git 不可见,因此请将其从跟踪中删除。然后,当您进行涉及此目录的更改时,您将不会在“未跟踪文件”列表下看到它,因为您已将它添加到 .gitignore 文件中。无论谁首先提交了 .settings/ 也不会将其视为有资格提交,因为他们更新了他们的 .gitignore 文件与您的更新以忽略 .settings/ 文件夹。

/**/.settings/

努力忽略根目录下的 .settings 文件夹。