- 再添加一次ssh有用
bash
ssh-add ~/.ssh/你的id_rsa的名字
可以先运行 eval "$(ssh-agent -s)"再添加,Jesus每次重启terminal都要输入一遍
报错 git@github.com: Permission denied (publickey)
通常是由于 SSH 公钥没有正确配置或者 GitHub 上未能识别你的公钥导致的。可以按照以下步骤来解决问题:
1. 检查 SSH 密钥是否已生成
首先,确保本地机器上已经生成了 SSH 密钥。你可以通过以下命令检查:
bash
ls ~/.ssh/id_rsa.pub
如果没有看到文件,可以生成新的 SSH 密钥:
bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按提示操作即可。生成的公钥将位于 ~/.ssh/id_rsa.pub
。
2. 将 SSH 公钥添加到 GitHub 账户
如果本地已经有 SSH 密钥,下一步是将其添加到 GitHub。执行以下命令,复制你的公钥:
bash
cat ~/.ssh/id_rsa.pub
然后在 GitHub 网站上操作:
- 登录 GitHub。
- 进入 Settings -> SSH and GPG keys。
- 点击 New SSH key,粘贴复制的公钥并保存。
3. 测试 SSH 连接
可以再次测试 SSH 连接,确认是否已成功:
bash
ssh -T git@github.com
如果提示 "You've successfully authenticated",则表示 SSH 配置成功。
4. 检查 SSH 配置
如果问题依旧,确保 SSH 客户端配置正确:
编辑 ~/.ssh/config
文件(如果文件不存在,可以创建):
bash
nano ~/.ssh/config
添加以下内容:
bash
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
保存后再次测试连接。
5. 检查 SSH 代理
如果你使用了 SSH 代理(比如 ssh-agent
),确保密钥已被代理使用:
bash
ssh-add ~/.ssh/id_rsa
总结:
这类问题大多由 SSH 公钥未正确添加到 GitHub 或 SSH 配置不当引起。通过确保公钥生成、添加到 GitHub 并正确配置 SSH,可以解决 Permission denied (publickey)
错误。