git@github.com: Permission denied (publickey).

本文介绍了解决在使用Git过程中遇到的git@github.com: Permission denied (publickey)错误的方法。通过验证邮箱、生成SSH密钥并将其添加到GitHub账户中,确保能够正常推送代码。

参考来源:

Git使用出现git@github.com: Permission denied (publickey). 处理_JT.X的博客-优快云博客_git@github.com

故障现象:

Administrator@MS-20201021YAOM MINGW64 /d/temp3/huashan (master)
$ git push origin master
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
 

解决方法:

进入git bash界面然后:
第1步,git config --global --list 验证邮箱与GitHub注册时输入的是否一致

             可以通过git config --global user.name “yourname”,git config --global user.email “email@email.com ”(这里得名字和邮箱都是注册github时用的)设置全局用户名和邮箱。

 第2步,ssh-keygen -t rsa -C “这里换上你的邮箱”,一路回车(注意:不需要输入其他内容),直到生成密钥。

根据上面地址和文件名可知, 会在/Users/***/路径下生成一个.ssh\id_rsa.pub文件,密钥就存储在其中:

有秘钥的话直接调到下面第3步,下面不需要看。

如果没找到id_rsa.pub文件,则根据git 软件的屏幕英文打印,看秘钥产生的位置。

 用 txt 工具打开此y.pub秘钥文件。

第3步,使用浏览器到git仓库,添加秘钥

右上角--> settings --> SSH and GPG keys .....


点击Add SSH key

 

第五部,ssh -T git@github.com 测试一下通不通,通了显示如下

即可正常使用。
不通就是
ssh-agent -s
ssh-add ~/.ssh/id_rsa 操作这两步。

Thanks to :

Git使用出现git@github.com: Permission denied (publickey). 处理_JT.X的博客-优快云博客_git@github.com


————————————————
版权声明:本文为优快云博主「JT.X」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/qq_43768946/article/details/90411154

### 解决方案 当遇到 `git@github.com: Permission denied (publickey)` 错误时,通常是因为 SSH 密钥配置不正确或者未正确加载到 SSH 代理中。以下是可能的原因以及解决方案: #### 可能原因及解决办法 1. **SSH密钥尚未生成或未上传至GitHub** 如果本地没有生成SSH密钥,则需要先创建一个新的SSH密钥并将其添加到GitHub账户中。 创建新的SSH密钥命令如下[^2]: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 将新生成的公钥复制到剪贴板: ```bash cat ~/.ssh/id_rsa.pub ``` 登录GitHub,在Settings -> SSH and GPG keys 中点击New SSH Key,并将上述公钥粘贴进去。 2. **SSH Agent未启动或未加载私钥** 确保SSH agent已运行并将私钥加载到其中。可以通过以下命令验证和启动SSH agent[^5]: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa ``` 3. **主机指纹校验失败** 删除 `.ssh/known_hosts` 文件中的旧条目可能会解决问题,因为有时服务器IP地址变更可能导致此问题: ```bash ssh-keygen -R github.com ``` 4. **测试SSH连接** 使用下面的命令来测试与GitHub的SSH连接是否正常工作[^1]: ```bash ssh -T git@github.com ``` 成功的话应返回类似于 “Hi username! You've successfully authenticated...” 的消息。 5. **检查权限模式** 验证`.ssh`目录及其内部文件是否有正确的访问权限[^3]: ```bash chmod 700 ~/.ssh chmod 600 ~/.ssh/* ``` 通过以上步骤逐一排查问题所在即可有效处理此类错误情况。 ```python import os os.system('eval "$(ssh-agent -s)"') os.system('ssh-add ~/.ssh/id_rsa') print("SSH Agent started and private key added.") ```
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值