Git报错:git@github.com: Permission denied (publickey)

1 错误信息

输入指令ssh -T git@github.com测试SSH链接,出现如下报错:

  1. git@github.com: Permission denied (publickey,password,keyboard-interactive).
  2. git@github.com: Permission denied (publickey).
  3. git@github.com's password:,但是即是你输入的是正确的密码,依旧提示Permission denied, please try again.

2 常规解决方法

在网上搜索相关解决方案,可以查到基本上都是说公钥没有配置好,操作如下:

  1. 生成SSH keys:ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "your_email@example.com"
  2. 配置ssh-agent:ssh-agent bashssh-add ~/.ssh/id_rsa.github
  3. 如果是多账号,则生成config:touch ~/.ssh/config
  4. 在GitHub账号页面中:settings -> SSH and GPG keys -> New SSH key

上述详细操作方法可以查阅其他博文,因为这不是本文的重点,很多人可能已经正确的配置了SSH keys,但已经无法正常链接SSH,可以看下面的解决方法。

3 其他解决方法

要测试通过 HTTPS 端口的 SSH 是否可行,请运行以下 SSH 命令:

ssh -T -p 443 git@ssh.github.com

如果你看到:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

那么说明可以通过 HTTPS 443端口建立的 SSH 连接,接下来编辑~/.ssh/config文件(C:\Users\Admin\.ssh\config),若没有该文件,可以输入如下指令新建一个:

touch ~/.ssh/config 

把下面内容填入该文件:

Host github.com
    Port 443
    HostName ssh.github.com
    User git
    IdentityFile ~/.ssh/id_rsa.github

需要注意的是IdentityFile字段的值要是.ssh文件夹中的GitHub公钥文件名。再输入:

ssh -T git@github.com

将看到:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

说明问题已经解决了。

  • 9
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
当你在使用命令ssh -T git@github.com测试公钥是否添加成功时,出现了报错"git@github.com: Permission denied (publickey)",以及在执行命令git push -u origin master时出现了错误提示"gitt@github.com: Permission denied (publickey). fatal: Could not read from remote repository",这通常是因为你本地或服务器上没有生成SSH key所导致的。SSH key是一种用于身份验证的加密密钥对,它包括了公钥和私钥两部分。在使用GitGitHub进行通信时,需要将生成的公钥添加到GitHub账户中,以便进行身份验证。 为了解决这个问题,你需要执行以下步骤: 1. 检查你的电脑上是否已经生成了SSH key。你可以通过运行命令"ls -al ~/.ssh"来查看。如果有一个名为id_rsa.pub或id_dsa.pub的文件,那么说明你已经生成了SSH key。 2. 如果没有生成SSH key,你需要使用以下命令生成一个新的SSH keyssh-keygen -t rsa -b 4096 -C "your_email@example.com" 这里的"your_email@example.com"应该替换成你在GitHub上注册的电子邮件地址。 3. 在生成SSH key后,你需要将公钥添加到你的GitHub账户中。你可以使用以下命令将公钥复制到剪贴板: pbcopy < ~/.ssh/id_rsa.pub 然后登录到GitHub账户,转到"Settings" -> "SSH and GPG keys" -> "New SSH key",将公钥粘贴到"Key"字段中,然后点击"Add SSH key"按钮保存。 现在,当你再次执行命令ssh -T git@github.comgit push -u origin master时,应该不再出现"Permission denied (publickey)"的错误提示了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Git错误记录 — git@github.com: Permission denied (publickey)](https://blog.csdn.net/baidu_40188909/article/details/108407895)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [MAC电脑gitt@github.com: Permission denied (publickey). fatal: Could not read from remote repository](https://blog.csdn.net/weixin_44468956/article/details/125293590)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值