在我运行时在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"
和
file:"C:\\ProgramData/Git/config"
我不仅应该有一个系统位置吗?
在Eclipse中,它默认为%APPDATA%
中的一个所以我认为它/ eclipse永远不会考虑文件:
“C:\ ProgramData / GIT中/配置”
答案 0 :(得分:1)
有--system配置值,如果你运行,你可以看到:
git config --list --system
并且有--global配置值,如果你运行,你可以看到:
git config --list --global
所以当你跑:
git config --list --show-origin
您可以看到两个列表混合在一起。
如果您将从本地存储库中运行它,您将看到它与本地配置值混合,如果您将运行,则可以获得这些值:
git config --list --local
答案 1 :(得分:0)
我相信正确答案是在问题评论中@PetSerAl提供的链接中给出的。解释是Windows有多种可用的git实现,通过将系统配置分为两个位置,您可以拥有一个可以在实现之间共享的系统配置,而一个可以用于当前实现的系统配置。
我对文档的解释是C:\\ProgramData/Git/config
中的一个是共享的,而C:\\Users\\user\\AppData\\Local\\Programs\\Git\\mingw64/etc/gitconfig
中的一个是您所使用的git实现所特有的。
看来,Eclipse没有通过两个系统设置文件来了解Windows特定的情况。但是,Windows版Git知道其他共享文件,并且在从Eclipse调用时应该使用它。