终极办法!connect to host port 22: Connection timed out [email protected]: Permission denied (publickey

过了个周末git突然用不了了,在拉代码的时候突然报错连接超时,又报错说没有权限,这就很烦了
在百度了很久以后尝试了各种办法,重新生成pub_key,重装git等等都没能解决,最后询问了公司大佬,困扰了一个上午的问题终于解决了
先说说百度上的解决办法:

1.替换秘钥

使用命令 ssh-keygen -t rsa 直接生成默认的rsa文件,之后在github上配置pub即可

2.配置config

生成rsa文件时自定义文件名,需要在 .ssh 目录下添加一个config文件,样例如下:

# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

其中 Host 和 HostName 后填写 git 服务器的域名,IdentityFile 指定私钥的路径(只需要修改 IdentityFile )

然后用命令测试一下成功没

ssh -T [email protected]

3.配置代理

1.打开文件夹C:\Users\Administrator.ssh(Administrator是当前用户名),在空白处点鼠标右键选择“Git Bush Here”

2.输入命令:ssh-keygen -t rsa -C “[email protected]”, [email protected]改为自己的邮箱即可,途中会让你输入密码啥的,不需要管,一路回车即可,会生成你的ssh key。

3.然后再执行命令:ssh -v [email protected]
这个时候可能会报错:

    No more authentication methods to try.  

    Permission denied (publickey).

4.不管报错继续输入:ssh-agent -s 这时候又会报错,如果这次报错了就输入:

eval ssh-agent -s

然后继续执行命令

ssh-add ~/.ssh/id_rsa

这时候一般就不会报错了

5.打开你刚刚生成的id_rsa.pub,将里面的内容复制,进入你的github账号,在settings下,SSH and GPG keys下new SSH key,title随便取一个名字,然后将id_rsa.pub里的内容复制到Key中,完成后Add SSH Key。

6.输入命令:ssh -T [email protected] 验证一下看成功没

我的解决办法

以上的方法很不幸,我都试了,都没用,我的解决办法给大家分享一下:

1.在项目目录下右键点击git Bash Here,打开git

2.在电脑左下角搜索打开Windows凭据

终极办法!connect to host port 22: Connection timed out git@ssh.github.com: Permission denied (publickey_第1张图片
3.在普通凭据里找到GitHub的删除
终极办法!connect to host port 22: Connection timed out git@ssh.github.com: Permission denied (publickey_第2张图片
4.在打开的git bash里输入如下命令

git clone http://userName:password@**.**.*.***:8082/root/Assessment_backend.git/

其中username是你登录git的用户名,不是邮箱!!!
password就是你登录git的密码

@后面是自己的仓库地址和端口号

然后就可以把代码拉下来了。
最后在Windows凭据里加上一个github的普通凭据就可以了!

你可能感兴趣的:(学习路上的问题,git,github,ssh)