配置 Git 全局代理是解决国内访问 GitHub 克隆速度慢的有效方法,通过将 Git 流量指向本地代理服务端口实现加速。该方法适合已具备合法网络代理服务的开发者,风险在于端口配置错误会导致克隆连接失败。
先说结论:配置 Git 全局代理能显著改善 GitHub 克隆速度,但需确保本地代理服务正常运行。
- 适合:国内网络环境访问海外 GitHub 仓库场景
- 先准备:确认本地代理服务的 IP 地址和监听端口号
- 验收:执行 clone 命令观察下载速度是否提升
命令速用版
以下命令将 Git 全局 HTTP 和 HTTPS 请求指向本地代理,请替换 PORT 为实际端口号(如 7890 或 1080):
git config `--global` http.proxy http://127.0.0.1:PORT
git config `--global` https.proxy http://127.0.0.1:PORT若只需对 GitHub 域名生效,避免影响国内仓库,可使用以下命令:
git config `--global` http.https://github.com.proxy http://127.0.0.1:PORT为什么会这样
Git 克隆速度慢的根本原因是 GitHub 服务器部署在海外,国内直接访问需经过漫长的国际网络链路。
数据包传输过程中可能经过多个拥堵节点,导致高延迟和低带宽。配置代理相当于为 Git 流量选择了一条更稳定的专用通道,绕过公共网络的拥堵节点。
分步处理
- 查找代理端口:打开网络工具设置界面,查看本地监听端口(常见为 7890、1080 或 1081)。
- 设置全局代理:在终端执行
git config `--global` http.proxy http://127.0.0.1:端口号。 - 可选优化:增大缓冲区以避免大文件传输中断,执行
git config `--global` http.postBuffer 524288000。 - 取消代理:若不再需要,执行
git config `--global` `--unset` http.proxy恢复默认。
怎么验证是否生效
执行git config `--global` `--get` http.proxy查看是否返回配置的代理地址。
尝试克隆一个小型 GitHub 仓库,观察控制台输出的下载速度是否有明显提升。
常见坑
- 端口号变动:代理工具重启后端口可能变化,需重新配置 Git。
- 证书错误:部分代理配置可能引发 SSL 证书验证失败,可尝试关闭 SSL 验证或检查代理协议。
- 国内仓库受影响:全局代理可能导致访问 Gitee 等国内仓库变慢,建议仅针对 GitHub 域名配置代理。
常见问题
如何取消 Git 代理设置?
执行git config `--global` `--unset` http.proxy和git config `--global` `--unset` https.proxy即可清除配置。
不知道代理端口号怎么办?
查看网络工具的设置界面,或在终端使用netstat -ano命令查找监听端口。
配置代理后克隆依然失败怎么办?
检查代理服务是否正常运行,确认端口号无误,或尝试切换 HTTP 与 HTTPS 代理协议。
参考来源
- GitHub 使用代理加速方式,解决网站访问和项目 Clone 慢的问题
- 加速 GitHub 访问:优化 git clone 速度的代理配置指南
- 3 行 Git 指令,搞定 GitHub 克隆/推送速度慢的问题
- git clone 速度很慢 解决方法【亲测有效】 - 转载
- Github 仓库 git clone 速度过慢解决方案