是从存储库上方目录中的.gitignore文件还是从任何版本的Git中加载的主目录中的.gitignore文件?

米卡·费勒(Mika Feiler)

是否.gitignore从存储库上方目录或主目录(~/.gitignore)中的文件加载到任何版本的Git中?

~/.gitignore尽管在我的系统上无法使用Git的版本,但一些咨询性网络帖子中提到,并且我的系统手册尚不清楚Git在寻找时走了多远.gitignore,尽管仅提到$XDG_CONFIG_HOME/git/ignore了主目录全局gitignore文件位置。

我的问题源于管理我的主目录点文件,我目前选择使用具有自定义GIT_DIR环境变量设置的Git ,这可以很好地解决,因为在我的任何子目录中Git默认都不是该存储库~

但是,因为.gitignore被硬编码,不能由一个环境变量来选择(我想是这样"${GIT_DIR%/}ignore"),我怕在我的一些系统~/.gitignore可能最终会在子目录全球或在库地应用~,我使出将以下代码段添加到我${GIT_DIR}/info/exclude${GIT_DIR}/info/exclude文件库中,然后将其暂存到存储库中,将要应用于我的dotfiles管理存储库的所有gitignore条目保留在其中(以及.gitignore仅在dotfiles子目录中的文件中)。我不喜欢它的地方是它很脏,有时可能会引起一些小问题。

上面提到的代码段,.gd是我的$GIT_DIR

/.gd/**
!/.gd/info/
!/.gd/info/exclude
用户名

全局忽略路径是可配置的(通过'core.excludesFile'选项),直到git版本1.7.12为止,它实际上都没有$XDG_CONFIG_HOME/git/ignore默认值–默认情况下,该选项为空白。

因此,许多人习惯于手动配置git以加载~/.gitignore为全局忽略文件。最有可能每个人都喜欢此路径,因为它靠近〜/ .gitconfig文件(全局设置保留在1.7.12之前的位置)。

然而,这仅仅发生在使用相同的文件名,但在其他方面是完全无关的每个库.gitignore,其搜索始终停在worktree根。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章