You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

新增GitHub账号配置SSH密钥及config文件后无法推送代码,SSH测试失败求助

我来帮你排查这个SSH连接问题——核心问题其实出在你的SSH config文件里的User配置上!

问题根源

GitHub的SSH身份验证只接受git作为连接用户名,不管你实际使用的是哪个GitHub账号。你在config里把User设成了ericnuist(你的账号昵称),这就导致GitHub无法正确识别你的身份,直接返回了权限拒绝。

修复步骤

  1. 修正SSH Config文件
    把你的~/.ssh/config里的User字段全部改成git,修正后的内容如下:
# one(one@gmail.com)
Host eric
HostName github.com
IdentityFile ~/.ssh/id_rsa
User git
# two(two@gmail.com)
Host nuist
HostName github.com
IdentityFile ~/.ssh/github_id
User git
  1. 重新验证连接
    执行命令ssh -T nuist,如果配置正确,你会看到类似这样的成功提示:

Hi nuist! You've successfully authenticated, but GitHub does not provide shell access.

  1. 额外检查(如果还是失败的话)
  • 确认你已经把github_id.pub(公钥文件)正确添加到新GitHub账号的SSH密钥列表中(千万别加私钥!)
  • 检查私钥文件的权限:Windows上右键文件→属性→安全,确保只有当前用户有读取权限;Linux/macOS下执行chmod 600 ~/.ssh/github_id,避免权限过宽导致SSH拒绝使用
  • 清空可能干扰的SSH代理密钥:执行ssh-add -D,然后重新测试连接

内容的提问来源于stack exchange,提问作者王子健

火山引擎 最新活动