GitHub 打不开或克隆慢怎么办?分层排查
GitHub 的网页、git 克隆、文件下载走的是不同通道,要分开排查。先确认网页是否正常,再看命令行是否读取了代理,最后核对克隆地址的协议类型,分层定位比整体换节点有效得多。
你遇到的现象
GitHub 网页打不开,或者 git clone 很慢、超时。
网页能打开却克隆不动,克隆下来了页面却刷不出来,在使用 GitHub 的人眼里是很熟悉的场景。GitHub 打不开并不是一个单一问题:网页浏览、命令行克隆、文件下载走的是三条不同的路,每条路出问题的原因也不一样。分层排查,比到处换节点有效。
先分清是哪一类场景
| 场景 | 用的是什么 | 典型症状 |
|---|---|---|
| 网页浏览 | 浏览器 | 页面打不开、样式错乱、图片加载不出 |
| 仓库克隆与拉取 | 命令行里的 git | clone 卡住、报超时、中途断开 |
| 文件下载 | 浏览器或下载工具 | Release 附件下载慢、反复中断 |
三类场景可以互相独立地正常或异常,所以第一件事是确认“到底是哪一类”。如果你想了解这个场景的整体思路,可以读 GitHub 加速与访问。
第一步:确认 GitHub 本身是否正常
服务端出问题时,改本地设置毫无意义。站内的 服务状态导航 收录了各类服务的状态页入口,先去看一眼。
- 有故障公告:等待恢复;
- 状态正常:继续往下排查;
- 想确认某个功能(例如克隆、网页)的行为说明,可以在官方 GitHub 文档 里查阅。
第二步:网页打不开怎么查
网页层的问题,沿着浏览器到网络的顺序逐项查:
- 用无痕窗口访问,排除缓存和扩展;
- 确认客户端已经开启,且浏览器走了代理,对照 系统代理不生效怎么办;
- 页面能打开但样式错乱、图片缺失,往往是部分静态资源域名没走通,可以尝试刷新、更换节点,并用 IP 与 DNS 检测导航 里的检测页核对解析;
- DNS 解析异常的处理,参考 DNS 泄露怎么解决。
第三步:git clone超时,先看命令行走了哪条路
这是最容易误判的一环。浏览器正常,不代表命令行正常。
| 现象 | 原因 | 做法 |
|---|---|---|
| 网页正常,克隆超时 | git 没有读取系统代理 | 为 git 单独配置代理,或开启虚拟网卡接管整机流量 |
| HTTPS 地址失败,SSH 地址成功 | 两种协议走的通道不同 | 以能成功的那种格式为准,并分别排查 |
| 克隆开始很快,后面逐渐卡死 | 链路中途不稳定 | 换时段、换节点再试 |
| 立即报证书或握手错误 | 系统时间或证书问题 | 看 证书错误与系统时间不对怎么办 |
给 git 指定代理的做法
git 支持通过配置指定代理,写法示意如下,其中的地址和端口请换成你本机客户端实际监听的值:
git config --global http.proxy http://127.0.0.1:你的端口
git config --global https.proxy http://127.0.0.1:你的端口
要取消,使用对应的 --unset 命令。注意这只影响 HTTPS 方式;SSH 方式需要在 SSH 的配置里单独处理,具体写法以 git 与 SSH 的官方文档为准。想让整机流量统一被接管,可以考虑 Clash TUN 模式,但开启失败时先看 TUN 模式开启失败怎么办。
第四步:下载与访问慢,怎么区分原因
github访问慢 和 github克隆慢 听起来相似,成因却可能完全不同:
- 访问慢:多数落在网页资源加载、解析、出口线路这几处;
- 克隆慢:多数落在传输通道、仓库体积、链路是否稳定;
- 都慢:先看整体速度,参考 梯子速度慢怎么办。
下载 Release 文件时,建议从官方页面下载并核对来源,不要为了速度使用来路不明的转存链接,那会带来安全风险。
先用一个小实验定位层次
遇到 GitHub 打不开,不必一上来就改一堆设置,下面三个小实验各花一两分钟,就能把范围缩小:
- 换浏览器:另一个浏览器正常,说明是原浏览器的缓存、扩展或安全 DNS 在作怪;
- 换协议:HTTPS 失败而 SSH 成功(或相反),说明问题在其中一种协议所走的通道;
- 换仓库:小仓库能克隆、大仓库中途断开,说明链路能通但不够稳定,而不是完全不通。
把三个实验的结果各记一行,通常就能看出问题偏向浏览器、协议还是链路,之后再针对性处理。
哪些做法只会增加麻烦
- 把所有节点挨个试一遍,却没有先确认命令行是否走了代理;
- 随手把代理配置写进多个地方,之后忘了取消,造成断网后 git 仍指向一个已经关闭的端口;
- 使用来源不明的镜像站或转存链接,存在被替换文件的风险;
- 在不稳定的时段反复重试同一条克隆命令,却不记录是在哪一步失败。
怎么确认修好了
处理完成后,用下面的清单验证:
- 用无痕窗口打开仓库页面,样式与图片正常;
- 在命令行克隆一个体积较小的仓库,成功完成;
- 再克隆一个稍大的仓库,观察是否能一次完成;
- 在不同时段各试一次,记录是否稳定;
- 取消临时设置后,确认没有留下无用的代理配置。
下一步怎么做
把 GitHub 打不开分成网页、克隆、下载三类,先确认服务状态,再按“浏览器、命令行、协议类型、链路稳定性”的顺序逐层查。想看更完整的访问思路,读 GitHub 加速与访问;想找官方仓库入口和客户端下载,去 GitHub 项目导航。
如果问题其实是整体速度偏低,换到 梯子速度慢怎么办 里按线路、带宽、客户端三个方向排查。
这篇没有覆盖的
- 本文只讲客户端侧和命令行侧的自查,不涉及搭建中转服务,也不提供任何镜像站或加速地址。
- 梯子岛没有任何线路访问 GitHub 的速度数据,克隆快慢请以你自己的多次测试为准。
- GitHub 的具体功能与限额以官方文档为准,本文不转述数值。
本文引用的官方来源
- GitHub 文档(docs.github.com)
以上链接均为官方页面,梯子岛在 2026-10-10 核对过;个别网站会拦截自动化访问,用浏览器直接打开即可。平台规则可能随时调整,以官方页面当前内容为准。
GitHub 打不开常见问题
网页能打开,为什么 git clone 却超时?
网页走浏览器,浏览器读取了系统代理;git 在命令行里运行,不一定读取系统代理,需要单独配置,或者借助虚拟网卡接管整机流量。所以网页正常而克隆失败很常见,不代表节点坏了,而是命令行没有走代理这条路。
用 HTTPS 地址和 SSH 地址克隆,有什么区别?
两者使用的通道和代理方式不同。HTTPS 地址一般可以通过 git 的代理配置或系统层面的接管走代理,SSH 地址则通常需要在 SSH 配置里单独处理。克隆失败时,换另一种地址格式试一次,是很好的对照实验。
克隆大仓库经常中途断开,该怎么办?
先确认是不是节点或网络不稳定,在其他时段再试一次。其次可以只拉取最近的提交历史,减少一次传输的数据量,具体参数请查 GitHub 与 git 的官方文档。反复在同一位置断开,则更可能是网络路径问题而不是仓库本身。
下载 Release 里的文件很慢,也是同样的原因吗?
部分相关。文件下载往往使用与网页不同的域名和通道,所以网页可用不代表下载快。建议从官方 Release 页面下载并核对文件来源,不要为了速度去使用来路不明的第三方转存链接,那会带来安全风险。
GitHub 本身故障时,我能怎么判断?
先看官方的服务状态信息,站内的服务状态导航收录了相关入口。状态页显示异常时,改本地设置没有意义,等待恢复即可;状态正常再回到本文的分层排查。梯子岛不提供实时的可用性判断。
接着读
- 场景 · GitHub 加速与访问:打不开、克隆慢怎么处理
- 排查 · 系统代理不生效怎么办?程序不走代理的排查
- 排查 · DNS 泄露怎么解决?检测方法与修复思路
- 排查 · 梯子速度慢怎么办?区分带宽、线路与客户端问题
- 排查 · TUN 模式开启失败怎么办?权限与冲突排查
- 排查 · ChatGPT 打不开怎么办?先查官方状态,再查出口与 DNS