我不得不使用一个没有适当证书的git服务器,但我不想这样做

env GIT_SSL_NO_VERIFY=true git command

每次我做git操作。但我也希望对其他git存储库启用SSL。有没有办法使这个本地到一个单一的回购?


当前回答

你可以这样做

git config http.sslVerify "false"

在特定的回购中禁用SSL证书检查仅用于该回购。

这将不工作与git克隆,因为你还没有本地git回购能够设置标志还。因此在这种情况下:

git -c http.sslVerify=false clone <path>
cd <directory>
git config http.sslVerify "false"

其他回答

对于windows,如果需要全局配置,则运行

git config --global http.sslVerify false

就像Thirumalai说的,但是在克隆的存储库内部,没有全局。也就是说,

GIT_SSL_NO_VERIFY=true git克隆https://url cd < directory-of-the-clone > Git配置http。sslVerify假

这对我来说很管用:

git init
git config --global http.sslVerify false
git clone https://myurl/myrepo.git

这个问题不断出现,我还没有找到一个令人满意的结果,所以下面是对我有效的方法(基于之前的答案https://stackoverflow.com/a/52706362/1806760,这是无效的):

我的服务器是https://gitlab.dev,具有自签名证书。

首先运行git config——system——edit(从一个提升的命令提示符,如果你想为你的用户这样做,将——system更改为——global),然后在任何前面的[http]部分之后插入以下代码片段:

[http "https://gitlab.dev"]
        sslVerify = false

然后检查你做的是否正确:

> git config --type=bool --get-urlmatch http.sslVerify https://gitlab.dev
false

您可以执行以下操作

对于一次回购

git config http.sslVerify false

对于所有回购

git config --global http.sslVerify false