解决github网络慢的问题

前言

本文采用替换host的方式来加速github的git请求,主要我自己用来备份的懒人方式,不然每次都要手动修改hosts文件,skrskrskr...

一、获取到可用的ip

先到这个网站查询到低延迟的ip

站长工具:https://ping.chinaz.com/

第2步,在查询框中输入 github.com 来进行查询

第3步,下滑找到一些低延迟的ip地址

复制下来这个你选择使用的ip

二、备份现有的hosts文件

第1步、将hosts文件改为可读写的

第2步、备份hosts文件

ctrl+c后ctrl+v即可,没啥好说的了

三、新建一个bat脚本

脚本内容如下:

复制代码
@echo off
setlocal

:: 请求用户输入IP地址
set /p ip=请输入要设置的IP地址: 

:: 定义hosts文件路径
set "hostsPath=C:\Windows\System32\drivers\etc\hosts"

:: 创建临时文件来存储修改后的内容
set "tempFile=%temp%\hosts.tmp"

:: 复制不含github.com的行到临时文件
(for /f "tokens=*" %%a in ('findstr /v /i "github.com" "%hostsPath%"') do (
    echo %%a
)) > "%tempFile%"

:: 使用findstr找到含有"#"开头和不含有"#"但包含github.com的行
(for /f "tokens=*" %%a in ('findstr /i "github.com" "%hostsPath%"') do (
    :: 如果行中包含github.com但没有#号开头,则添加#号到行首
    if not "%%a"=="#%%a" (echo #%%a) else (echo %%a)
)) >> "%tempFile%"

:: 在临时文件中追加新行
echo %ip% github.com >> "%tempFile%"

:: 替换原始hosts文件
move /Y "%tempFile%" "%hostsPath%" >nul 2>&1

:: 刷新DNS缓存
ipconfig /flushdns

echo 操作完成!
pause

保存后,改为 replace_hsot.bat 文件名无所谓,后缀是 .bat 即可

然后修改文件的编码格式为gbk后保存(utf-8控制台输出中文会乱码)

四、以管理员权限执行脚本

右键选择 以管理员权限执行脚本 replace_hsot.bat

此时,命令行窗口输出如下:

粘贴第一步获取到的ip后回车,之后按任意键退出即可

相关推荐
消失的旧时光-19432 小时前
第一篇:Ktor Client 到底是什么?从 Retrofit 迁移理解 Ktor 网络请求架构
网络·架构·retrofit·ktor·dsl
数据知道2 小时前
反序列化漏洞:Java、PHP、Python 三条线各讲透
java·网络·python·安全·网络安全·php
江畔柳前堤2 小时前
Function Calling 与 Tool Calling:从认知到工程的全景深度解析
开发语言·网络·人工智能·深度学习·算法·机器学习·php
LabVIEW开发2 小时前
LabVIEW 通过以太网控制 Yokogawa WT3000 功率分析仪:tmctl.dll 与原始套接字方案
网络·labview·labview知识·labview功能·labview程序
xiaoxiangsiyan3 小时前
企业日常运维高频应用服务全解
运维·网络·云原生·容器·dns
fthux3 小时前
不必下载整个仓库:GitZip Pro 让 GitHub 文件与文件夹批量下载更简单
前端·chrome·ai·edge·开源·github·firefox
那年窗外下的雪.4 小时前
AIDC 学习日志 Day 3:OSPF Underlay 实验、故障排查与深入解析
服务器·网络·php
星恒讯工业路由器4 小时前
IP地址冲突:成因、影响与工业网络中的应对策略
网络·信息与通信·ip地址冲突·工业网络·网络故障排查·ip-mac绑定
深圳恒讯4 小时前
CN2 GIA和CN2 GT的区别
运维·服务器·网络
盗理者5 小时前
AI Agent 技能分享|从零实现一个 MCP Server,让 AI Agent 安全调用内部系统
网络·人工智能·安全·agent