git 上传文件失败:Permission denied (publickey). Could not read from remote repository. Please make sure

1、问题

git@github.com: Permission denied (publickey). Could not read from remote repository.  Please make sure you have the correct access rights and the repository exists.

含义:git@github.com:权限被拒绝(公钥)。无法从远程存储库中读取。请确保您具有正确的访问权限,并且该存储库已存在。

2、分析

之前在push上传项目文件的时候,Git Bash中创建远程仓库的时候使用的是SSH仓库地址连接github,在github上面“setting->SSH and GPG keys”中还没有生成过SSH key,导致在第一次上传文件(push,这个错误在pull的时候也有可能出现)的时候报错了

原因:网上搜索得到的解释是

  • 客户端与服务端没有生成ssh key
  • 或者客户端与服务端的ssh key 不匹配

3、解决

步骤一:生成SSH key

  • 使用cmd命令行终端或者Git Bash终端,输入以下命令之后回车

ssh-keygen -t rsa -C  "邮箱@.com"  // 邮箱@.com这里填上自己的邮箱就可以了,尽量保持和github上注册的邮箱一致,最后生成的SSH key 会保存在C盘中

  • 之后一直一直回车到结束就可以了,SSH key 保存在了“/c/Users/huangyun/.ssh/id_rsa.pub”(自己查看保存的位置),这个在下面的这个图中可以看到的

  • 进入到这个路径“/c/Users/huangyun/.ssh/id_rsa”之后,以“记事本”或者“写字板”等其他的方式打开id_rsa.pub这个文件,按住control+A,control+C全选复制,然后粘贴到github上面

 

步骤二:在github上添加SSH key

  • 登陆自己的github账号,在settings下

(图1)

(图2) 

 

(图3) 

 

(图4)

对了,之后会跳转到下面这个页面,输入自己的github账号的密码就可以了

 (图5)

添加成功之后的界面

 

步骤三:验证

  • 在Git Bash 中输入以下命令进行验证

ssh -T git@github.com  // 注意此处的T要大写,不然会报错PTY allocation request failed on channel 0

  • 如果提示到以下反馈代表问题成功解决了

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

(图)

 

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值