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

推送私有Git仓库遇kex_exchange_identification错误求解决方案

可行解决方案
  • 验证SSH密钥有效性

    1. 检查本地SSH密钥是否存在:
      ls -la ~/.ssh
      
      确认是否有id_rsa/id_ecdsa/id_ed25519这类私钥文件,以及对应的.pub公钥文件。
    2. 重新生成SSH密钥(若旧密钥可能失效):
      ssh-keygen -t ed25519 -C "your_email@example.com"
      
      全程按回车默认设置即可,按需选择是否设置密码。
    3. 将新公钥添加到GitHub账户:
      复制公钥内容:
      cat ~/.ssh/id_ed25519.pub
      
      登录GitHub账户后,进入Settings -> SSH and GPG keys页面,粘贴添加新的SSH key。
  • 测试SSH连接状态
    执行命令测试与GitHub的SSH连接:

    ssh -T git@github.com -p 443
    

    若返回Hi [你的用户名]! You've successfully authenticated, but GitHub does not provide shell access.则连接正常,否则根据报错信息定位问题。

  • 临时切换为HTTPS协议推送
    若SSH问题无法快速解决,可暂时更换仓库远程地址为HTTPS:

    git remote set-url origin https://github.com/[用户名]/[仓库名].git
    

    推送时输入GitHub用户名和个人访问令牌(PAT)作为密码,PAT需在GitHub的Settings -> Developer settings -> Personal access tokens页面生成,勾选repo权限。

  • 清理本地SSH配置冲突

    1. 检查.ssh/config是否存在冲突配置:
      cat ~/.ssh/config
      
      保留仅针对github.com的配置,删除多余的Host条目。
    2. 清除旧的GitHub主机信任记录:
      ssh-keygen -R github.com
      ssh-keygen -R ssh.github.com
      ssh-keygen -R 140.82.121.36
      
      重新连接时系统会自动重新验证并信任主机密钥。
  • 排查本地拦截工具
    关闭本地防火墙、杀毒软件、VPN等可能拦截SSH连接的工具,之后再尝试推送操作,确认是否恢复正常。

  • 确认仓库地址与权限
    检查本地仓库的远程地址是否正确:

    git remote -v
    

    确保地址与GitHub上的仓库SSH/HTTPS地址完全一致,同时确认你的GitHub账户拥有该私有仓库的推送权限(可在仓库Settings -> Collaborators and teams页面查看)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 16:15:53