在gitlab和github

时间:2018-09-23 13:18:42

标签: git ssl-certificate mutual-authentication

在我工作的地方,我们有一个托管gitlab,它需要一个clietn ssl证书才能允许连接。那已经在git global config中配置了,所以我的〜/ .gitconfig很好用。客户端证书请求仅在反向代理级别。不过,我们仍然使用用户名/密码作为凭据。

[http]
   sslCert = /Users/xuser/gitlab_ssl/xxx.crt
   sslKey = /Users/xuser/gitlab_ssl/xxx.key

现在,每次需要从github克隆时,我都会得到could not load PEM client certificate, LibreSSL error error:02001002:system library:fopen:No such file or directory, (no key found, wrong pass phrase, or wrong file format?)

我尝试使用-c git -c http.sslCert="" -c http.sslKey="" clone https://github.com/xxxxx覆盖配置,但是它不起作用。我尝试使用别名,但没有看到在顶级配置上使用别名的任何东西,例如git中的[http]块。

有没有办法: 1-使用公司gitlab的“ git clone bla bla” 2-“ git everythingelse clone bla bla”不会尝试加载客户端证书吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

更改您的配置

[http]

收件人

[http "https://gitlab.com"]

这将使这些配置设置仅适用于指向GitLab的URL。诸如GitHub之类的其他URL不受此块中配置更改的影响。如果您通过其他URL访问托管的GitLab,只需将该URL放入配置中即可。