将GitHub私有仓库链接至CPanel时出现Git错误代码128求助
解决cPanel拉取GitHub私有仓库时的公钥权限拒绝问题
错误核心分析
你遇到的Permission denied (publickey)是SSH公钥认证失败导致的,本质是cPanel服务器的身份未被GitHub认可,下面是具体解决步骤:
步骤1:获取并授权cPanel的SSH公钥
登录cPanel后找到「SSH Access」工具,进入「Manage SSH Keys」:- 若已有公钥,点击「View Public Key」,复制从
ssh-rsa开头到末尾注释的全部内容; - 若无公钥,点击「Generate a New Key」生成,密码可留空(方便自动拉取代码),生成后务必点击「Authorize」授权该密钥在服务器上生效。
- 若已有公钥,点击「View Public Key」,复制从
步骤2:在GitHub仓库添加部署密钥
登录GitHub进入你的私有仓库,依次点击「Settings」→「Deploy keys」:- 点击「Add deploy key」,粘贴刚才复制的cPanel公钥,填个备注(比如「cPanel 服务器」),需要推送代码的话勾选「Allow write access」,最后保存。
步骤3:确认仓库地址正确性
检查cPanel里输入的仓库地址是SSH格式:git@github.com:你的用户名/仓库名.git,别用HTTPS格式;同时核对用户名、仓库名拼写,确保仓库确实存在。可选:手动验证SSH连接
打开cPanel的「Terminal」工具,执行命令:ssh -T git@github.com如果返回
Hi 你的用户名! You've successfully authenticated, but GitHub does not provide shell access.,说明公钥配置没问题;若仍报错,检查公钥是否完整复制,有没有多余空格或换行。
额外注意事项
- 只复制公钥,绝对不要泄露cPanel的私钥;
- 刚添加的部署密钥可能需要1-2分钟同步,别急着重试;
- 错误里的「Permanently added the ECDSA host key...」是正常提示,无需处理。
内容的提问来源于stack exchange,提问作者Abraham
相关产品推荐
相关产品推荐

