【问题标题】:What is the priority regarding git configuration? [duplicate]git 配置的优先级是什么? [复制]
【发布时间】:2014-11-09 02:10:20
【问题描述】:

如果我在 ~/.gitconfig 文件上设置配置,哪个配置会覆盖它?

  • 项目级配置:.git/config
  • 系统级配置:/etc/gitconfig

【问题讨论】:

  • 如果你先试试呢?

标签: git git-config


【解决方案1】:

从最低到最高优先级:

  • /etc/gitconfig:系统范围,使用--system参数时编辑
  • ~/.gitconfig:用户特定配置,使用--global参数时编辑
  • .git/config:存储库特定配置

【讨论】:

  • Windows 系统上的系统范围文件在哪里?
  • Google 说 C:\Program Files\Git\etc\gitconfig,我必须相信它。
  • 是的。谢谢。基本上就是位置:C:\Program Files (x86)\Git\etc\gitconfig。我真的很想知道那个文件在哪里。
  • 感谢您消化手册并以星期一早上的格式将其提供给我 :)
  • 在我的配置中,存储库配置不适用于代理。当我使用 git config http.proxy 时,git 无法访问代理后面的服务器。但是当我使用 git config --global http.proxy 时它可以工作。但我想要回购特定的代理设置。为什么会这样,你怎么看?
【解决方案2】:

来自 Git 手册(阅读 http://git-scm.com/docs/git-config#FILES

如果没有用 --file 明确设置,git config 将在四个文件中搜索配置选项:

$(前缀)/etc/gitconfig

系统范围的配置文件。

$XDG_CONFIG_HOME/git/config

第二个用户特定的配置文件。如果 $XDG_CONFIG_HOME 未设置或为空,将使用 $HOME/.config/git/config。此文件中设置的任何单值变量都将被 ~/.gitconfig 中的任何内容覆盖。如果您有时使用较旧版本的 Git,最好不要创建此文件,因为最近才添加了对该文件的支持。

~/.gitconfig

用户特定的配置文件。也称为“全局”配置文件。

$GIT_DIR/config

存储库特定的配置文件。

如果没有给出其他选项,所有读取选项将读取所有这些可用的文件。如果全局或系统范围的配置文件不可用,它们将被忽略。如果存储库配置文件不可用或不可读, git config 将以非零错误代码退出。但是,在这两种情况下都不会发出错误消息。

按照上面给出的顺序读取文件,最后找到的值优先于之前读取的值。当取多个值时,将使用所有文件中某个键的所有值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-14
    • 2015-11-04
    • 1970-01-01
    • 2010-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多