.gitignore文件属于哪里?

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

320013 次浏览

你可以把.gitignore放在git的任何目录中。

它通常用作文件夹中的占位符文件,因为git通常不会跟踪文件夹。

如果有疑问,就把它放在存储库的根目录中。更多信息请参见https://help.github.com/articles/ignoring-files/

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

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

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

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

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

此外,如果你在Github上创建了一个新帐户,你可以选择添加.gitignore,它将自动设置在你工作地点的正确/标准位置。你不需要在开始的时候添加任何东西,只要随时改变内容就可以了。

如果你还没有在文件夹项目中创建全局的.gitignore,你也可以直接在~路径下找到它。 你所有的。git项目都会考虑这个文件

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

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

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

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

官方文档:

Git从多个源检查gitignore模式,优先级顺序如下(last匹配模式决定了结果):

  1. 模式从命令行读取支持模式的命令。

  2. 模式从与路径相同目录的.gitignore文件中读取,或在任何父目录中(直到工作树的顶层),高级文件中的模式被低级别文件中的模式覆盖,直到包含该文件的目录。

  3. $GIT_DIR/info/exclude读取的模式。

  4. 从配置变量core.excludesFile指定的文件中读取的模式。