[Solution] Github Permission denied (publickey)

出现 "Permission denied (publickey)" 说明本地 SSH 公钥没被 GitHub 认可或没被 ssh-agent 使用。

按步骤排查(在 Git Bash):

  1. 检查是否已有密钥
bash 复制代码
ls ~/.ssh
# 常见文件:id_ed25519 / id_rsa 及对应 .pub
  1. 如无密钥则生成(推荐 ed25519)
bash 复制代码
ssh-keygen -t ed25519 -C "你的邮箱"
# 一路回车,生成 ~/.ssh/id_ed25519 和 id_ed25519.pub
  1. 启动 ssh-agent 并添加私钥
bash 复制代码
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
  1. 把公钥加入 GitHub
bash 复制代码
cat ~/.ssh/id_ed25519.pub

复制输出,在 GitHub → Settings → SSH and GPG keys → New SSH key 粘贴保存。

  1. 测试连接

  2. 再次推送

成功*★,°*:.☆( ̄▽ ̄)/.°★* 。

tips: 如果 ssh-add 报错或重启后失效,可在当前会话先执行 eval "$(ssh-agent -s)"ssh-add

相关推荐
Elieal3 小时前
本地仓库首次推送的 4 种标准姿势(HTTP / SSH × Gitee / GitHub)
gitee·ssh·github
测试人社区-小明3 小时前
测试金字塔的演进:如何构建健康的自动化测试套件
python·测试工具·数据挖掘·pycharm·机器人·github·量子计算
阿里嘎多学长3 小时前
2025-12-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管
学IT的周星星4 小时前
Git 推送远程仓库全攻略:GitHub + Gitee 的 HTTP 和 SSH 四种方式详细对比与实操步骤(2025最新版)
git·gitee·github
是毛毛吧13 小时前
边打游戏边学Python的5个开源项目
python·开源·github·开源软件·pygame
无限进步_17 小时前
深入理解 C/C++ 内存管理:从内存布局到动态分配
c语言·c++·windows·git·算法·github·visual studio
java程序员一位21 小时前
从公司项目复制迁移到个人仓库
github
WYiQIU1 天前
突破字节前端2-1⾯试: JS异步编程问题应答范式及进阶(视频教学及完整源码笔记)
开发语言·前端·javascript·vue.js·笔记·面试·github
Better Bench1 天前
git与github协作开发的常用命令
git·github