Git https 访问在 MacOS Sierra 上中断/SSL 钥匙串错误

Git https access broken on MacOS Sierra / SSL keychain error

升级到 MacOS Sierra 后,我的 Git 停止使用 https Repos,例如 GitHub。

git clone https://github.com/monday-consulting/FSDevTools.git
Cloning into 'FSDevTools'...
fatal: unable to access 'https://github.com/monday-consulting/FSDevTools.git/': SSL: Can't find the certificate "My User" and its private key in the Keychain.

似乎无法访问钥匙串(使用 [credential] helper = osxkeychain),因为我可以在钥匙串中看到带有私钥的证书。除此之外,我还添加了 ssh-add -K ~/.ssh/id_rsa

我在这里读到过:https://github.com/curl/curl/pull/1105 但我不确定为什么还有 keychin 访问权限?! 我的 .gitconfig 根本没有 [http] 部分(具有 sslVerifysslCert 属性)所以我根本没有使用任何证书。

有趣的是 - 使用具有相同 Git 可执行文件并禁用 "Allow SourceTree to modify my global Git and Mercurial config files" 的 SourceTree(因此使用相同的 .gitconfig)工作没有问题。

我也尝试过使用 Homebrew 的 curl 并使用 --with-brewed-curl 编译 Git - 没有任何改变。

解决方案是设置环境变量 GIT_SSL_CERT。所以 Git 总是尝试使用不需要的证书。