github 推送出现“git@github.com: Permission denied (publickey). fatal: 无法读取远程仓库。请确认您有正确的访问权限并且仓库存在。” 问题

本文详细介绍了如何在GitHub上配置SSH Key,包括生成SSH Key、添加SSH Key到GitHub以及确保本地仓库与SSH Key正确关联的方法。

1.首先检查有没有在GitHub的https://github.com/settings/keys上添加你本机的SSH key。注意换了电脑是要重新添加的,每台都不一样。添加SSH key的方法:
(1)在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

ssh-keygen -t rsa -C "youremail@example.com"
  • 1

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可。

如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

(2)登录GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
在这里插入图片描述
点“Add Key”,你就应该看到已经添加的Key:

在这里插入图片描述

如果添加了还是出现这个问题,那么问题大概率就定位在了你本机的这个git仓库并没有和这个SSH key 关联上。用下述方法解决:
打开终端:

ssh-add "你的 id-rsa 文件地址"
  • 1

mac系统用下面的命令打开密钥目录:

open .ssh
  • 1

add之后返回仓库目录使用如下命令

ssh git@github.com
  • 1

提示添加成功,就可以正常push代码了。

要解决 Git 克隆仓库时出现的 `git@github.com: Permission denied (publickey)` 错误,可以从以下几个方面入手: ### 1. 检查现有 SSH 密钥 首先确认本地是否已经存在 SSH 密钥。可以通过执行以下命令来查看: ```bash ls ~/.ssh ``` 如果看到类似 `id_rsa` 和 `id_rsa.pub` 的文件,则表示已有密钥;如果没有,则需要生成新的 SSH 密钥。 ### 2. 生成新的 SSH 密钥 如果本地没有现有的 SSH 密钥,可以使用以下命令生成: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 按照提示操作后,将在 `~/.ssh/` 目录下生成密钥文件。 ### 3. 将公钥添加到 GitHub 生成密钥之后,需要将公钥添加到 GitHub 账户中。首先打印出公钥内容: ```bash cat ~/.ssh/id_rsa.pub ``` 复制输出的内容,然后登录 GitHub 并导航至账户设置中的 "SSH and GPG keys" 部分,点击 "New SSH key",粘贴你的公钥内容。 ### 4. 测试 SSH 连接 完成上述步骤后,测试与 GitHub 的连接以确保一切正常: ```bash ssh -T git@github.com ``` 如果一切顺利,应该会看到如下消息: ``` Hi ICTMCG! You've successfully authenticated, but GitHub does not provide shell access. ``` ### 5. 使用正确的 URL 克隆仓库 当克隆仓库时,确保使用的是正确的 SSH URL。例如: ```bash git clone git@github.com:NVIDIA/cutlass.git ``` 此外,还需确认仓库是否存在以及当前用户是否有访问权限。 ### 6. 检查 SSH 配置 有时候问题可能源于 SSH 客户端配置不当。检查 `.ssh/config` 文件是否存在任何可能导致问题的设置,并根据需要调整配置。 ### 7. 清除缓存并重新尝试 清除已有的凭证缓存可能会有所帮助: ```bash ssh-add -D ``` 接着再次尝试克隆仓库。 ### 8. 确认权限和路径正确性 确保目标目录具有适当的写权限,并且路径没有拼写错误。 通过以上步骤,大多数由 SSH 密钥引起的权限问题都可以得到解决。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值