一文教你解决git请求github时候超时的问题

前言

这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱

一文教你解决git请求github的时候超时问题

      • 一. 问题
      • 二. 当前 ssh 实现原理
      • 三. 创建ssh key
        • 3.1 将ssh key加入github配置中
        • 3.2 测试连接
      • 四. 验证和修改

一. 问题

错误如下
Failed to connect to github.com port 443 after 21107 ms: Timed out

image-20230923125330652

最近不知道为啥,直接通过https请求github仓库老是报错超时,时好时坏的,网上找了一些方案是通过ssh请求,亲测可用,使用ssh后 pull和push速度都变快了

二. 当前 ssh 实现原理

SSH登录安全性由非对称加密保证,产生密钥时,一次产生两个密钥,一个公钥,一个私钥,在git中一般命名为id_rsa.pub, id_rsa

那么如何使用生成的一个私钥一个公钥进行验证呢?

本地生成一个密钥对,其中公钥放到远程主机,私钥保存在本地

当本地主机需要登录远程主机时,本地主机向远程主机发送一个登录请求,远程收到消息后,随机生成一个字符串并用公钥加密,发回给本地。本地拿到该字符串,用存放在本地的私钥进行解密,再次发送到远程,远程比对该解密后的字符串与源字符串是否等同,如果等同则认证成功

三. 创建ssh key

当前Git环境所有配置 :git config --global --list

image-20230923125951778

要确保你的用户名和邮箱对应的上你的github,如果对应不上的话需要通过以下命令重新配置以下就可以了

 git config --global user.name "Rodma1"

 git config --global user.email  "你的邮箱"

然后我们通过 ssh-keygen -t rsa -C "你的邮箱" 生成SSH Key

一文教你解决git请求github时候超时的问题_第1张图片

生成的 SSH Key可以去到 C:\Users\用户名\.ssh 这个目录查看

一文教你解决git请求github时候超时的问题_第2张图片

或者可以直接通过 cd ~/.ssh 查看
一文教你解决git请求github时候超时的问题_第3张图片

注意这个id_rsa.pub文件,里面是存储了公钥,接下来我们会将里面的内容拿到github上面去添加SSH key

3.1 将ssh key加入github配置中

也就是将生成的公钥放进去

进入setting设置ssh
一文教你解决git请求github时候超时的问题_第4张图片

  1. Title 随意
  2. Key types直接选择默认
  3. Key 是上述第一步中 .pub 中的内容,复制其内容至此输入
3.2 测试连接

进入本地的 C:\Windows\System32\drivers\etc ,host文件配置域名解析

140.82.112.3 github.com

一文教你解决git请求github时候超时的问题_第5张图片

一文教你解决git请求github时候超时的问题_第6张图片

测试是否连通 ssh -T [email protected]

image-20230923130459406

如果还没连通看看是否设置了代理,通过以下命令去取消就可以了

git config --global --unset http.proxy

 git config --global --unset https.proxy

四. 验证和修改

去仓库复制ssh地址

一文教你解决git请求github时候超时的问题_第7张图片

git remote -v 查看远程地址,如果原来有了就先删除在添加

git remote remove <name>
git remote add

一文教你解决git请求github时候超时的问题_第8张图片

参考文章:https://www.jb51.net/article/241929.html

作者:神的孩子都在歌唱
本人博客:https://blog.csdn.net/weixin_46654114
转载说明:务必注明来源,附带本人博客连接。

你可能感兴趣的:(Git和Github,git,github)