You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级VS2022后Git报ssh-rsa无匹配主机密钥类型问题排查

配置无效的核心原因

你写的SSH配置存在两个致命问题,导致规则完全不生效:

  • Host配置段的匹配规则仅支持填写主机名/IP的匹配模式,不能把连接用户名(git@前缀)、端口号(:7999后缀)写在Host字段后,你写的匹配规则根本命中不了实际连接的目标地址,后续加的算法放行配置自然不会被加载。
  • Visual Studio 2022 内置的Git组件默认读取当前Windows用户目录下的用户级SSH配置,路径为C:\Users\<你的用户名>\.ssh\config,如果你之前修改的是Git安装目录下的系统级ssh_config文件,VS不会读取该文件的配置。
正确修复步骤
  1. 打开资源管理器,进入当前用户的.ssh目录,默认路径为C:\Users\你的Windows登录用户名\.ssh。如果目录下没有无后缀名的config文件,就新建一个纯文本文件,重命名为config(注意开启文件后缀显示,避免存成config.txt导致识别失败)。
  2. 清空文件里之前写错的配置,写入以下正确规则:
# 匹配IP形式的Git服务地址
Host 192.168.16.140
    Port 7999
    HostkeyAlgorithms +ssh-rsa
    PubkeyAcceptedAlgorithms +ssh-rsa

# 匹配devtools域名形式的Git服务地址
Host devtools
    Port 7999
    HostkeyAlgorithms +ssh-rsa
    PubkeyAcceptedAlgorithms +ssh-rsa
  1. 打开PowerShell或者Git Bash,先执行命令测试SSH连通性:
    ssh -T git@192.168.16.140
    如果弹出主机指纹确认提示,输入yes回车,正常返回BitBucket的欢迎/认证成功提示就说明配置已经生效。
  2. 重启Visual Studio,重新打开仓库后再执行pull、push操作即可恢复正常。

补充排查点:如果按上述操作后仍报错,可以打开VS的「选项-源代码管理-Git全局设置」,确认SSH可执行文件路径指向你当前安装的Git for Windows目录下的usr\bin\ssh.exe,避免VS调用了版本不匹配的系统自带OpenSSH组件。

内容的提问来源于stack exchange,提问作者WebInspired

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 16:54:42