很多公司在使用 Git 构建公司内部的私有仓库时,为了提高数据传输的安全性,使用了 Https 的方式来提供服务,又因为各种原因在服务端使用了自签名的方式。 这样在从客户端访问时就会得到: “SSL certificate problem: self singed certificate” 的错误, 导致相关的操作不能完成。

  1. 全局禁止验证(不建议)

解决这个问题,比较简单的方法是设置 git 在全局范围(本机的所有项目)止验证证书,使用下面的命令:

1
git --global config http.sslVerify false

但这样可能会带来其它的安全问题。

  1. 在单个项目中禁止

在操作自签名的仓库时,总是加上 “ -c http.sslVerify=false “ 这个参数,比如要克隆一个仓库,则执行:

1
git -c http.sslVerify=false clone https://your-domain/repos

要上传到远程仓库,则执行:

1
git -c http.sslVerify=false push

在已经克隆到本地的单个项目中,也可以通过执行 config 命令在项目范围内禁止验证证书,进入项目目录,执行:

1
git config http.sslVerify false
  1. 在 IDE 中

在 IDE 中(比如: Intellij IDEA),如果已经通过 “ -c http.sslVerify=false “ 参数克隆了源码库(该步骤需要在命令行完成),可以在项目目录中执行:

1
git config http.sslVerify false

以便在单库中禁止验证证书,方便通过 IDE 的相关菜单来完成后续的版本管理操作。

TAGS