Mac Big Sur环境下Git Push时SSH密钥验证异常求助
解决Mac Big Sur下GitHub SSH认证持续失败的问题
检查并修改仓库远程协议
你最初用HTTPS克隆仓库,默认推送协议还是HTTPS,和SSH密钥无关。先确认远程地址:git remote -v
如果输出是https://github.com/xxx/xxx.git格式,执行命令切换为SSH地址:git remote set-url origin git@github.com:你的用户名/仓库名.git验证SSH密钥配置
- 检查本地密钥文件:
ls -la ~/.ssh
确认存在id_ed25519(或id_rsa)私钥和对应的.pub公钥文件,没有的话重新生成:ssh-keygen -t ed25519 -C "你的GitHub绑定邮箱"(全程回车用默认设置即可) - 核对GitHub上的公钥:复制本地
.pub文件的全部内容,检查GitHub「Settings」→「SSH and GPG keys」里的密钥是否完全一致,不要有多余空格或换行。
- 检查本地密钥文件:
修复SSH代理与密钥缓存
Mac Big Sur的SSH代理可能没自动加载密钥,按以下步骤操作:- 启动SSH代理:
eval "$(ssh-agent -s)" - 将密钥添加到代理:
ssh-add ~/.ssh/id_ed25519(如果是RSA密钥就替换为id_rsa) - 配置自动加载:创建或编辑
~/.ssh/config文件,添加内容:Host github.com AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_ed25519 - 当系统弹出密钥访问请求时,勾选「始终允许」,避免每次重启都需要重新授权。
- 启动SSH代理:
测试SSH连接
执行命令验证连接是否正常:ssh -T git@github.com
出现Hi 你的用户名! You've successfully authenticated, but GitHub does not provide shell access.提示即为成功。系统与Git版本排查
Mac Big Sur 11.6.5本身支持GitHub SSH认证,大概率不是系统版本问题。可以检查Git版本:git --version
如果版本低于2.20,建议更新到最新稳定版(可通过Homebrew或Git官网安装)。
内容的提问来源于stack exchange,提问作者Reid Williamson
相关产品推荐
相关产品推荐

