git默认核心配置来自哪里

  • 本文关键字:配置 默认 核心 git git
  • 更新时间 :
  • 英文 :


我知道git中系统,全局和本地配置之间的差异。我知道本地配置存储在.git/config file

但是,当我做一个新鲜的存储库时,本地配置已经填充了,例如,我看到:

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true

我的问题是 - 这些默认的本地配置来自哪里,我该如何更改这些默认值?

我知道我可以更改本地配置,但是我有两个问题:

  1. 下一个克隆将获得相同的默认值,我不想要
  2. 我为几个用户维护一个存储库,所以我希望它为每个人更改

预先感谢

我的问题是 - 这些默认的本地配置来自哪里,我该如何更改这些默认值?

这些是 - 在大多数情况下 - 不是默认值。这不是您应该更改的配置,而是有关系统的信息。

例如,HEN您创建一个存储库,GIT检测您的文件系统是否敏感。它将core.ignorecase设置写为缓存,因此将来不必再次检测到它,否则这将是每个Git命令的浪费。

您不应该更改此;它影响了GIT如何使用文件系统运行。同样,这不是默认设置,而是系统检测到的行为的缓存。

例外是logallrefupdates,它确实是配置。但是,这种(与其他任何配置一样)无法克隆,您应该找到一个机制以从频段中分发配置(例如init脚本)。

(但不要更改core.ignorecase等设置。)

您可以运行此命令:

git config --list --show-origin

这将为您提供全球设置的每个配置的文件列表。可以在此帖子上找到更多细节

最新更新