.gitconfig系统位置混乱

.gitconfig系统位置混乱,git,Git,在windows 10上运行时: git config --list --show-origin 我得到: file:"C:\\ProgramData/Git/config" core.autocrlf=input file:"C:\\ProgramData/Git/config" core.fscache=true file:"C:\\ProgramData/Git/config" color.diff=auto file:

在windows 10上运行时:

git config --list --show-origin
我得到:

    file:"C:\\ProgramData/Git/config"       core.autocrlf=input
    file:"C:\\ProgramData/Git/config"       core.fscache=true
    file:"C:\\ProgramData/Git/config"       color.diff=auto
    file:"C:\\ProgramData/Git/config"       color.status=auto
    ...
    file:"C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig"   http.sslcainfo=C:/Users/user/AppData/Local/Programs/Git/mingw64/ssl/certs/ca-bundle.crt
    file:"C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig"   http.sslbackend=openssl
    file:"C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig"   diff.astextplain.textconv=astextplain
    ....
    file:C:/Users/user/.gitconfig  alias.st=status
    file:C:/Users/user/.gitconfig  alias.co=checkout
为什么我两个都有:

file:"C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig"
以及:

我不应该只有一个系统位置吗

在Eclipse中,它默认为%APPDATA%中的值

所以我假定它/Eclipse永远不会考虑文件:

“C:\ProgramData/Git/config”

有--系统配置值,您可以在运行时看到:

git配置--列表--系统

还有--全局配置值,您可以在运行时看到这些值:

git配置--列表--全局

所以当你跑步时:

git配置--列表--显示源代码

您可以看到这两个列表是混合的

如果您在本地存储库中运行它,您将看到它还与本地配置值混合,这些值是您运行时可以获得的:

git配置--列表--本地


我相信@PetSerAl在对问题的评论中提供的链接给出了正确答案。解释是,Windows有多个不同的git实现,通过将系统配置分为两个位置,您可以拥有一个可在实现之间共享的系统配置和一个特定于当前实现的系统配置

我对文档的解释是,
C:\\ProgramData/Git/config
中的文档是共享文档,
C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig
中的文档是特定于您正在使用的Git实现的文档


Eclipse似乎不知道有两个系统设置文件与Windows相关。不过,Git for Windows知道另一个共享文件,从Eclipse调用时应该使用它。

使用
Git config--help
并转到
文件
部分。好的,windows上的两个“系统”位置仍然有点混淆。我已经更新了帖子以包含eclipse选择的(不能更改的)路径,而且它似乎永远不会从C:\ProgramData\Git\config读取选项,因此需要将这些选项复制到%APPDATA%中的配置中。如果您使用
--system
标志表示
Git
,那么它将只读
%Git%\\mingw64/etc/gitconfig“
。我不知道Eclipse是否读取
C:\ProgramData/Git/config
,但您自己应该很容易检查。我的观点是,Eclipse硬编码为仅从%APPDATA读取gitconfig文件,请参见上面的屏幕截图,您无法更改这一点。看起来很奇怪。
file:"C:\\ProgramData/Git/config"