1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > git生成SSH秘钥(git报错git@github.com: Permission denied (publickey). Could not read from remote repositor)

git生成SSH秘钥(git报错git@github.com: Permission denied (publickey). Could not read from remote repositor)

时间:2021-06-19 22:48:30

相关推荐

git生成SSH秘钥(git报错git@github.com: Permission denied (publickey). Could not read from remote repositor)

事情是这样,公司的电脑本来更新代码,拉取代码是没有任何问题的,昨天下班回家后想着把代码拉下来看看,然后在云效上面看到之前生成的秘钥,有好几个之前设置的秘钥,感觉好像没有用手贱给删掉了,早上来公司想着拉一下代码,结果报错了。

error: git@: Permission denied (publickey). Could not read from remote repositor

其实就是因为之前设置好的已经在使用的秘钥被我删掉了,所以如果诸如此类的报错基本就是因为秘钥失效的问题造成。

或者说你是第一次使用git,或者云效,等等此类的代码管理工具。

第一次配置生成秘钥

在你拉取代码的时候可以选择使用SSH方式或者HTTPS的方式,暂只讨论SSH方式,你可以管理你的SSH秘钥,点击立即查看它:

在添加SSH秘钥之前,你可以先生成它

目前平台仅支持 RSA 算法生成的 SSH 密钥,在你的计算机命令行中首先执行以下语句,判断是否已经存在本地公钥:

cat ~/.ssh/id_rsa.pub

如果你的电脑是window系统,执行以上命令,通常会报如下的错误

'cat' 不是内部或外部命令,也不是可运行的程序或批处理文件。

这是因为cat是Linux系统专有的命令,那么可以跳过这个步骤,直接生成秘钥,执行如下命令:

ssh-keygen -t rsa -C "<您的邮箱>"

将双引号中的内容更换为你自己的注册Git使用的邮箱地址即可,回车:

那么,如果这个时候又报错了呢,如下:

ssh-keygen 不是内部或外部命令,也不是可运行程序或者批处理文件。

这是因为Git环境变量相关的配置没有完善,解决如下:

第一,首先确保你已经正确安装Git,如果没有,请先安装再执行以下操作。

第二,找到Git(安装目录)/usr/bin目录下的ssh-keygen.exe (如果找不到,可以在计算机全局搜索),复制ssh-keygen.exe文件的系统路径。如下:

第三,在 “我的电脑(或计算机)”右键 属性-->高级系统设置-->环境变量-->系统变量,找到Path变量,点击编辑,然后光标移动到最后(一行),输入英文状态下的分号,将第二步复制的路径粘贴到最后面,确定,保存。

完成以上三部便可以了,接下来打开终端窗口(快捷键win+R,输入cmd),然后输入之前生成秘钥的命令 ssh-keygen -t rsa -C "<您的邮箱>",回车(记得替换邮箱),如下:

这是要求你提供一个位置去存放公钥、私钥文件,你可以选择使用默认位置保存公钥、私钥文件(直接回车)。

当然你应该记住这个默认的地址,以方便你寻找秘钥的存储位置,如C:\Users\PC500/.ssh/id_rsa。

一路回车之后,你所需要的秘钥就生成了,你可以去粘贴它了,找到相应位置,选择记事本方式打开id_rsa.pub文件,复制全部内容,到之前打开的添加SSH秘钥的地方,粘贴进去:

标题可以随便起,为了方便记忆,可以按照项目名称的形式定义标题名称,完成后,点击添加,至此SSH秘钥边已经生成可以使用了,快去拉取你得代码吧。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。