在不更改 .gitignore 的情况下忽略未跟踪的文件

Ignore an untracked file without changing .gitignore

我想忽略一个特定的 untracked/new 文件,而不必为 repo 编辑 .gitignore 文件。我们称之为 src/foo.xml.

我试过:

git update-index --assume-unchanged src/foo.xml
git update-index --skip-worktree src/foo.xml

两者都告诉我 Fatal: Unable to mark file src/foo.xml,我猜这是因为它一开始就没有被跟踪。

我还尝试将 src/foo.xml 添加到 .git/info/exclude。当这不起作用时,我尝试将其更改为 /src/foo.xml,然后是 C:/work/myproject/src/foo.xml,两者都不起作用。

在所有情况下,如果我这样做 git status,foo.xml 仍然显示为要添加的未跟踪文件。

如果我将 src/foo.xml 添加到 .gitignore 文件,它会按预期被忽略,但随后我正在更改 .gitignore,这正是我试图避免的。

看完评论后。你想忽略文件但不提交 .gitignore

这是由 IDE 创建的,将影响每个项目。

你不想提交但你确实想忽略。

使用全局git忽略

git config --global core.excludesfile ~/.gitignore_global

此文件将用于您当前用户提交的所有项目,但不属于任何项目。