在不更改 .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
此文件将用于您当前用户提交的所有项目,但不属于任何项目。
我想忽略一个特定的 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
此文件将用于您当前用户提交的所有项目,但不属于任何项目。