.gitignore文件是否属于.git文件夹结构中的某个地方或主源文件中?


当前回答

正如其他答案所述,您可以将.gitignore放置在Git存储库的任何目录中。但是,如果你需要一个。gitignore的私有版本,你可以将规则添加到.git/info/exclude文件中。

其他回答

根目录可以放置.gitignore文件。

不要忘记使用git rm——cached FILENAME来添加文件到.gitignore,如果你在提交了一个你想忽略的文件的repo之后创建了gitignore文件。参见github文档。当我创建一个.env文件,然后提交它,然后尝试通过创建一个.gitignore文件来忽略它时,我发现了这一点。

将.gitignore放到工作目录中。如果你把它放在.git(存储库)目录中,它就不起作用了。

$ ls -1d .git*
.git
.gitignore

在简单的情况下,存储库的根目录中可能只有一个.gitignore文件,该文件递归地应用于整个存储库。但是,子目录中也可以有额外的.gitignore文件。这些嵌套的.gitignore文件中的规则仅适用于它们所在目录下的文件。Linux内核源存储库有206个.gitignore文件。

——这是我从progit.pdf(version 2) P32中读到的

正如其他答案所述,您可以将.gitignore放置在Git存储库的任何目录中。但是,如果你需要一个。gitignore的私有版本,你可以将规则添加到.git/info/exclude文件中。

如果你想全局执行,你可以使用git搜索的默认路径。只需将它放在一个名为“ignore”的文件中,路径为~/.config/git

(所以文件的完整路径是:~/.config/git/ignore)