How do I configure Git to trust certificates from the Windows Certificate Store?
Solution 1:
Beginning with Git for Windows 2.14, you can now configure Git to use SChannel, the built-in Windows networking layer. This means that it will use the Windows certificate storage mechanism and you do not need to explicitly configure the curl CA storage mechanism.
From the Git for Windows 2.14 release notes:
It is now possible to switch between Secure Channel and OpenSSL for Git's HTTPS transport by setting the
http.sslBackend
config variable to"openssl"
or"schannel"
; This is now also the method used by the installer (rather than copyinglibcurl-4.dll
files around).
You can choose the new SChannel mechanism during the installation of Git for Windows 2.14. You can also update an existing installation to use SChannel by running:
git config --global http.sslBackend schannel
Once you have configured this, Git will use the Windows certificate store and should not require (and, in fact, should ignore) the http.sslCAInfo
configuration setting.
Solution 2:
Use:
git config --local ...
To specify per-repository settings. Local settings are stored in the .git
directory.
An overview of the three locations where git
can store settings:
-
--local
: Repository specific,<repo_dir>/.git/config
-
--global
: User-specific,~/.gitconfig
-
--system
: System default,/etc/gitconfig
More specific ones override more general settings, i.e. local overrides both global and system.