VS2022内置Git遇SSL协商错误,命令行Git配置无效如何解决?
解决VS2022内置Git的SSL协商错误及配置同步问题
方案1:让VS2022复用系统Git的全局配置
VS2022默认使用内置Git,不会自动继承系统Git的全局配置,可通过以下步骤切换:
- 打开VS2022,点击顶部菜单栏工具 → 选项
- 左侧导航栏展开源代码管理 → Git全局设置
- 右侧找到Git可执行文件路径,选择你系统中已安装的Git路径(例如
C:\Program Files\Git\cmd\git.exe) - 点击确定后重启VS2022,此时VS会使用已配置
http.sslVerify=false的系统Git,命令行的配置直接生效
方案2:直接为VS2022内置Git添加SSL配置
若不想切换到系统Git,可单独给VS内置Git配置SSL验证关闭:
- 方法1:通过VS界面设置
- 打开工具 → 选项 → 源代码管理 → Git存储库设置
- 选中目标仓库,点击编辑
- 在配置项中添加:键为
http.sslVerify,值为false
- 方法2:手动编辑全局Git配置文件
找到用户目录下的.gitconfig文件(路径通常为C:\Users\<你的用户名>\.gitconfig),确保文件包含以下内容:
[http] sslVerify = false
方案3:解决OpenSSL旧版协商禁用问题
若仍出现OpenSSL/3.1.1: error:0A000152错误,是因为OpenSSL 3.x默认禁用了不安全的旧版协商机制,可通过以下两种方式解决:
- 方式1:修改OpenSSL配置文件
找到对应Git环境的openssl.cnf文件:- 系统Git:通常在
C:\Program Files\Git\mingw64\ssl\openssl.cnf - VS内置Git:通常在
C:\Program Files\Microsoft Visual Studio\2022\<版本>\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw64\ssl\openssl.cnf
在文件的[system_default_sect]节点下添加:
- 系统Git:通常在
Options = UnsafeLegacyRenegotiation
- 方式2:设置系统环境变量
- 右键此电脑 → 属性 → 高级系统设置 → 环境变量
- 在系统变量中新建:
- 变量名:
OPENSSL_ENABLE_LEGACY_RENEGOTIATION - 变量值:
1
- 变量名:
- 重启VS2022后生效
内容的提问来源于stack exchange,提问作者Jumpod
相关产品推荐
相关产品推荐

