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

前言

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

一. 问题

错误如下
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

image-20230923130250978

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

image-20230923125805227

或者可以直接通过 cd ~/.ssh 查看
请添加图片描述

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

3.1 将ssh key加入github配置中

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

进入setting设置ssh
请添加图片描述

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

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

140.82.112.3 github.com

image-20231029224226324

image-20231029224123500

测试是否连通 ssh -T git@github.com

image-20230923130459406

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

git config --global --unset http.proxy

 git config --global --unset https.proxy

四. 验证和修改

去仓库复制ssh地址

image-20231029224333069

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

git remote remove <name>
git remote add

image-20231029224535314

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

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

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当使用GitHub时,有时会遇到请求超时问题。这可能是由于网络连接不稳定或GitHub服务器负载过高导致的。为了解决这个问题,你可以尝试以下方法: 1. 使用SSH协议进行请求:通过使用SSH协议而不是HTTPS协议来与GitHub进行通信,可以提高连接的稳定性和速度。你可以按照以下步骤设置SSH密钥并使用SSH协议进行请求: - 生成SSH密钥对:在终端中运行以下命令生成SSH密钥对: ```shell ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` - 将公钥添加到GitHub账户:将生成的公钥(默认为~/.ssh/id_rsa.pub)添加到GitHub账户的SSH密钥设置中。 - 使用SSH协议进行请求:在进行git操作时,使用SSH URL而不是HTTPS URL。例如,使用以下命令克隆一个仓库: ```shell git clone git@github.com:username/repository.git ``` 2. 检查用户名和邮箱配置:确保你的本地git配置中的用户名和邮箱与你的GitHub账户对应。你可以使用以下命令进行配置: ```shell git config --global user.name "Your Name" git config --global user.email "your_email@example.com" ``` 3. 尝试使用代理:如果你在使用代理服务器进行网络连接,可以尝试配置git使用代理。你可以使用以下命令配置git代理: ```shell git config --global http.proxy http://proxy.example.com:8080 git config --global https.proxy https://proxy.example.com:8080 ``` 请注意,这些方法可能因个人情况而异,你可以根据自己的需求选择适合你的方法来解决GitHub请求超时问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神的孩子都在歌唱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值