Global Git忽略绝对路径

问题描述 投票:0回答:1

我有一个项目,我想忽略一个名为.eslintrc.js的根文件。团队只希望在构建工具中使用lint而不是在IDE中。我想将它添加到我的机器上的根目录中并忽略它而不使用.gitignore用于该项目。

我也不想将/.eslintrc.js添加到我的~/.gitignore_global文件中,因为当我不想忽略linting规则时我有其他项目。

我试过添加

~/code/repo-name/.eslintrc.js

在我的~/.gitignore_global文件中,但然后git不承认该规则。

如何制作一个全局git忽略规则,该规则适用于某些项目,而不适用于其他项目?

我可以设置git来忽略某些东西吗?

git gitignore
1个回答
1
投票

首先,值得一提的是关于忽略文件模式的一个棘手的问题:如果它们包含一个前导或嵌入的斜杠,它们适用于多个名称组件,但如果它们不适用,它们将应用于一个名称组件(在Git遍历的任何目录中,递归地,当时)。删除尾部斜杠(如果有)后应用此规则,以便包含以下内容的.gitignore文件:

abc
def/ghi

忽略从此点“向下”发生的名为abc的所有文件(和目录),而忽略此时发生的def/ghi。第二行与/def/ghi完全相同。

我可以设置git来忽略某些东西吗?

不.Gitignore模式要么与忽略文件发生的目录(对于大多数.gitignore文件)或项目根目录(对于.git/info/exclude和您的个人忽略文件)相关。也就是说,假设该项目位于/home/arron/project/proj1并且:

$ cd ~/project/proj1/
$ cat .gitignore
/abc
sub/file
$ cat sub/.gitignore
/dir/

所有这些条目都包含/或以.gitignore开头,因此顶级abc抑制了对项目顶层未跟踪文件file的抱怨以及对sub目录中未跟踪文件sub的投诉。同时目录.gitignore有自己的dir,不仅抑制投诉,但停止Git甚至枚举sub内的目录project/proj1/sub/dir/的内容,即Git根本没有看到.gitignore内部(因此既没有发现,也没有抱怨,该目录中任何未跟踪的文件)。

请注意,如果我们修改两个$ cat .gitignore /abc $ cat sub/.gitignore /file /dir/ 文件,以便我们改为:

qazxswpoi

被忽略的文件集保持完全相同。

© www.soinside.com 2019 - 2024. All rights reserved.