今天拉取新项目,报错:no supported authentication methods available(server sent: publickey),没有可用的支持的身份验证方法(已发送服务器:公钥)。
原因:本地git的ssh密钥已过期,更新密钥,并且上传到项目中去即可。
解决方案:win+r打开cmd,输入命令:
ssh-keygen -t rsa
回车,如果你的git中已存在密钥则会显示原来的密钥路径,然后问你是否覆盖它:
我选择了y,接着一路回车,如果它让你输入密码,你可以选择不输入,这有个好处就是每次提交代码就不用输密码。
ssh密钥生成后你会在C:\Users\Administrator看到.ssh文件夹,里面有通常有2个文件,一个为id_rsa,另一个为id_rsa.pub。
前者为你的私钥,以.pub后缀结尾的则为公钥,这个就是下面要上传的ssh公钥,用文本编译器打开这个文件,然后复制里面的代码,准备下一步;
我的项目是在coding里面管理的,so,登录coding,找到【个人账户设置】==》个人设置【ssh公钥】==》右上角点击【新增公钥】,在公钥内容 *里面填入你刚才复制的公钥代码,
公钥名称可以不用填,下面的公钥有效期选择永久有效,你亦可选择相对日期。最后点保存,但是还没完!先附下图:
保存好公钥后再次拉取项目不会弹出no supported authentication methods available(server sent: publickey)的报错了,但是会出现下面的报错:
Please make sure you have the correct access rights
and the repository exists.
请确保您拥有正确的访问权限
并且存储库存在。
如果你是项目开发者,那么就请稍等一会再拉去即可成功,这可能是应为缓存原因,新设置的公钥还没有生效导致。
- 密钥 authentication available supported publickeyauthentication supported available publickey 密钥authentication supported available 密钥authentication available supported 密钥permission publickey变态 authentication password support removed authentication supported国产 错误 authentication compiled邮件support publickey permission publickey coding denied permission publickey denied