设置证书验证位置时出错 - Github

时间:2018-02-01 05:33:05

标签: git bash ssl github

我在通过 Git Bash 访问github存储库时遇到问题。

2天前我能够推/拉存储库。然后

1)我在gitlab.com

上创建了一个帐户

2)我在GitLab and SSH keys之后使用 git bash on windows

在我的本地电脑上生成了ssh密钥

3)之后我没有在gitlab上创建/拉/推任何存储库。

今天我在代码中进行了一些更改(部署在github上),当我尝试推送代码时出现以下错误

fatal: unable to access 'https://github.com/junaidbinsarfraz/repo.git/': error setting certificate verify locations:
  CAfile: E:/Softwares/Git/mingw64/libexec/ssl/certs/ca-bundle.crt
  CApath: none

libexec

中没有 ssl 文件夹

libexec folder

自2017年1月起,Git文件夹中没有更改文件/文件夹

enter image description here

看起来像git-bash问题,不确定。有人可以帮忙吗?

4 个答案:

答案 0 :(得分:3)

首先,创建ssh密钥对HTTPS网址没有帮助 保留这些密钥,但如果您想使用它们,则需要放置现有的ssh keys to your github account然后

 cd /path/to/your/repo
 git remote set-url origin git@github.com:junaidbinsarfraz/repo.git
 git push

其次,关于证书错误,尝试使用a simplified PATH as I do here从简单的CMD推送,并使用所述PATH引用very latest Git for Windows
为此,请在任何地方解压缩PortableGit-2.16.1-64-bit.7z.exe

答案 1 :(得分:2)

就我而言,在 Windows 上,它在设置 namee mail 以及 git config 的证书路径后不起作用。从命令提示符运行以下命令修复了这个问题。

git config --global http.sslcainfo "C:\Program Files\Git\usr\ssl\certs\ca-bundle.crt"

您的 ca-bundle.crt 的路径可能因您的情况而异。

答案 2 :(得分:0)

在openSUSE 15.2 WSL(Linux的Windows子系统)上,我通过以下方式解决了此错误:

sudo update-ca-certificates 
sudo mkdir -p /etc/pki/tls/certs/
sudo cp /etc/ssl/ca-bundle.pem /etc/pki/tls/certs/ca-bundle.crt  

/etc/pki/tls/certs/ca-bundle.crt是错误中提到的证书文件。我注意到该文件丢失了。 就我而言,完整的错误是:

fatal: unable to access 'https://github.com/vim/vim.git/': error setting certificate verify locations:
  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none

答案 3 :(得分:-1)

解决方案:

git config --global http.sslverify "false"

此命令,然后是您平常的git clone "url"事情。

将来拉/推安全存储库可能会引起麻烦。因此,禁用风险自负。