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

EC2通过SSH对接GitHub拉取代码报publickey权限错误如何解决?

问题根源

你配置的core.sshCommand参数存在关键错误:ssh -i命令要求指定SSH私钥文件路径,你当前填写的~/.ssh/id_rsa.pub是公钥文件,无法用于身份验证,这是pull报错的核心原因。

修复步骤

  1. 修改Git配置中的sshCommand参数
    可以直接编辑仓库下的.git/config文件,将对应行修改为:
sshCommand = "ssh -i ~/.ssh/id_rsa"

也可以在仓库目录下执行命令完成修改:
git config core.sshCommand "ssh -i ~/.ssh/id_rsa"

  1. 校验SSH文件权限
    SSH协议对密钥文件权限有严格要求,权限过高会导致验证失败,在EC2实例中执行以下命令修正权限:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
  1. 验证功能
    先执行ssh -T git@github.com确认身份验证正常,再执行git pull即可完成代码拉取。

可选排查方案

如果修改后仍然报错,可以将sshCommand调整为调试模式,输出完整验证日志定位问题:
git config core.sshCommand "ssh -v -i ~/.ssh/id_rsa"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 09:51:04