Windows10下GitBash连接GitHub提示主机真实性无法验证的问题求助
解决GitBash推送GitHub的SSH验证及密钥问题
一、处理主机真实性验证错误
这个错误是首次连接GitHub时的安全提示,无需手动寻找known_hosts文件,直接在GitBash执行以下命令自动信任主机:
ssh-keyscan github.com >> ~/.ssh/known_hosts
执行后会自动生成known_hosts文件并写入GitHub的主机密钥,后续推送就不会再触发该错误。
二、清理多余SSH密钥
你执行ls -al ~/.ssh显示的10个“密钥”,实际是该目录下的多个密钥文件(比如不同命名的xxx私钥和xxx.pub公钥),而Windows文件管理器里看到的是存放这些文件的.ssh文件夹,二者不冲突。清理步骤:
- 进入SSH目录:
cd ~/.ssh
- 列出所有文件,确认仅保留你绑定到GitHub的那组密钥对(通常是
id_rsa私钥和id_rsa.pub公钥):
ls -al
- 删除多余的密钥文件(替换
xxx为实际文件名):
rm xxx xxx.pub
注意:不要删除当前在用的密钥对、known_hosts及config文件(如果存在)。
三、验证SSH密钥与GitHub的绑定有效性
- 查看当前使用的公钥内容:
cat ~/.ssh/id_rsa.pub
- 复制输出的全部内容,到GitHub账号的「Settings→SSH and GPG keys」页面,确认该公钥已添加且处于启用状态。
- 测试SSH连接是否正常:
ssh -T git@github.com
若输出Hi <你的GitHub用户名>! You've successfully authenticated, but GitHub does not provide shell access.,说明连接正常,可正常推送代码。
内容的提问来源于stack exchange,提问作者Shree
相关产品推荐
相关产品推荐

