【Git】GitHub SSH Key配置push仍然失败的问题
2020/3/21 9:01:19
本文主要是介绍【Git】GitHub SSH Key配置push仍然失败的问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
最近在搞博客的事情,发现部署时会出现如上图所示的错误,主要是这句:
git@github.com: Permission denied (publickey)
,提示没有权限,push失败,之前一直是拿GitHub客户端上下代码的,这回打命令用git居然失败了。结果一番研究百度,发现和SSH Key
有关,下面是我解决这个问题的经过,在此记录下来。↓
一、获取SSH Key
SSH Key
字面意思就是个钥匙,一般发起网络请求时我们总要在传入ID
,表明身份,这东西当然也是如此。
首先需要手动获取SSH Key
,命令行进入到项目文件夹后,输入指令:
-> git config --global user.email "email@email.com" #这里email为注册GitHub账号的邮箱,下同 -> ssh-keygen -t rsa -C "email@email.com" #获取SSH Key -> ssh-add ~/.ssh/id_rsa #将获取的SSH Key添加到id_rsa 这一步必不可少 复制代码
接下来一路回车,如果出现xxxx/.ssh/id_rsa already exists. Overwrite (y/n)?
就摁y
。
1.存放位置
⚠️SSH Key
会存放在:↓
macOS: 访达 -> 前往 -> 个人 -> .ssh
(.ssh文件夹一般是隐藏的,显示隐藏文件夹可用快捷键shift + command + .
)
Windows: C:\Users\Administrator\.ssh
.ssh文件夹下包含有id_rsa
和id_rsa.pub
两个文件,我们需要的key就在id_rsa.pub
里面。
2.打开方式
-> vim ~/.ssh/id_rsa.pub 复制代码
可用以上方式打开,当然也可以直接双击打开。退出编辑模式快捷键shift + Q
,再摁Q
。
二、为GitHub设置SSH Key
1.设置SSH Key
❗️这里要注意一下,登录GitHub后点击右上角的头像,然后Settings -> SSH and GPG Keys -> New SSH Keys
。⬇️
-> vim ~/.ssh/id_rsa.pub 复制代码
添加key,title任意填,key就不行了,使用上面的命令打开后,将完整的key,就是从ssh-rsa一直
到邮箱,都复制到里面去,保存即可。完成后的截图⬇️。
2.SSH Key 和 Deploy Key
这里其实还有个点坑,每个仓库的设置页有一个Deploy Key
,它的获取方法和上面是一样的,但是这个只对这一个仓库有效,而且似乎有有效期限?之前添加SSH Key搞错了,忙活了好长时间。
3.接下来
-> ssh -T git@github.com #测试是否添加成功 -> ssh-add ~/.ssh/id_rsa # 若出现问题 重新添加key(不用在Github里再添加) 复制代码
push一下试试吧。
三、问题复现
如果首图的问题复现,而最近才添加过SSH Key,那么可以重新使用ssh-add ~/.ssh/id_rsa
试一试。
这篇关于【Git】GitHub SSH Key配置push仍然失败的问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法
- 2024-08-21【Linux】gnome桌面环境切换KDE Plasma
- 2024-08-19如何安装 VMware Tools (macOS, Linux, Windows)
- 2024-08-15Linux部署Scrapy教程:入门级指南
- 2024-07-29linux命令行下好用的性能监控工具atop
- 2024-07-04Linux系统上离线升级SSH服务的具体操作步骤-icode9专业技术文章分享
- 2024-06-0600-macOS和Linux安装和管理多个Python版本
- 2024-03-30[译]漫画SELinux概念