已配置SSH密钥并添加至GitHub,仍无法克隆仓库至VS Code
以下是一步步排查和解决的方法:
先测试本地SSH与GitHub的连通性
打开终端执行:ssh -T git@github.com如果返回
Permission denied (public key),说明密钥认证环节有问题,继续往下操作。确认本地SSH密钥文件存在
检查~/.ssh目录下是否有生成的私钥(如id_rsa)和公钥(如id_rsa.pub),如果是自定义命名的密钥,后续操作要替换成对应文件名。验证GitHub上的公钥内容正确
打开本地公钥文件cat ~/.ssh/id_rsa.pub,复制全部内容,对比GitHub账户设置里的SSH密钥,确保完全一致,没有多余空格、换行或截断。启动SSH代理并添加私钥
终端执行:eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa如果添加成功会没有提示,若报错
Could not open a connection to your authentication agent,可以重启终端再试。排除代理干扰
若之前设置过代理导致混乱,创建或编辑~/.ssh/config文件,添加GitHub专属配置:Host github.com HostName github.com User git IdentityFile ~/.ssh/id_rsa ProxyCommand none保存后再次测试SSH连通性。
确认VS Code的Git配置
在VS Code中打开设置,搜索git.path,确保路径指向系统安装的Git(而非第三方插件自带的),避免环境不一致导致的问题。
完成以上步骤后,再执行ssh -T git@github.com,如果返回Hi [你的用户名]! You've successfully authenticated, but GitHub does not provide shell access.,说明认证成功,此时再去VS Code中克隆仓库即可。
内容的提问来源于stack exchange,提问作者Slim

