2022年3月20日

技术教程 如何让Visual Studio自带的Git信任第三方证书

作者 TheWhiteDog9487

这个标题可能有点误导,我解释一下到底是咋回事
一般来说,Git会在clone的时候检查SSL证书,这本身是个大好事。但是如果你安装了Kaspersky的安全软件,他有一项功能是注入HTTPS流量以实现广告过滤等功能。或者你使用Steamcommunity302并对Github代理。那问题就来了。
上面两种情况都有一个共同特点:会添加第三方SSL证书,这就导致Git会报错。
咋解决呢?我一般是在Git Config里面修改【http.sslVerify】到False,这样就可以禁用SSL验证。但关掉这个功能本身不是好事,并且按照标题,这次的Git是集成在Visual Studio中的。

Visual Studio集成的Git挺好用的,init、commit、push全都有中文和GUI,对新手友好的多。但在我添加了SteamCommunity302的证书后就没法Clone了,报错还是那个SSL错误,而且这次没法修改Git Config,在哪里添加证书我也不知道,找了半天也没看到,直到我看到了这个:

Visual Studio 中的 Git 设置 | Microsoft Docs

可以看到,根据微软的说法,默认使用OpenSSL,但是你可以把它修改成“安全通道”,这是个啥我也不知道,但看起来应该是内嵌在Windows里面的一个组件,好像还允许继承Windiows的管理,那就试一下!

工具->选项->源代码管理->全局设置

在这个地方修改为安全通道后,再次尝试Clone,就成功了(前提是你在Windows里面把你要使用的第三方CA证书添加到受信任的根证书颁发机构)