WSの小屋

使用 Clash 解决 GitHub 连接不上

众所周知,GitHub 在国内访问十分不稳定。有时能直接裸连,有时会完全打不开。本文介绍使用 Clash 代理软件来稳定访问 GitHub,以及配置 Git 代理的完整方法。

常见方案对比

方案 优点 缺点
修改 hosts 免费、操作简单 不稳定、IP 经常变更
Steam++ 免费、功能全面 连接缓慢、Git push 可能 SSL 报错
Clash + 机场 稳定快速 需要付费机场
Watt Toolkit 免费开源 功能局限于游戏加速

经过实践,Clash 配合稳定的机场订阅是最可靠的方案。

Clash 简介

Clash 是一个使用 Go 语言编写的、基于规则的跨平台代理软件核心程序。它支持:

  • 多种协议:Shadowsocks、V2Ray、Trojan、SOCKS5 等
  • 规则分流:根据域名/IP 自动选择代理或直连
  • 跨平台:Windows、macOS、Linux、路由器等
  • RESTful API:可通过 Web Dashboard 管理

安装与配置

下载 Clash

前往 Clash 下载页面 选择对应系统的版本。

获取机场订阅

机场提供的是代理节点的订阅链接,可以通过 Web 地址导入到 Clash 中使用:

  • 免费机场:网上可找到,但通常不稳定、限速
  • 付费机场:价格从每月几元到几十元不等,稳定性有保障

导入配置

  1. 打开 Clash 客户端
  2. 进入配置页面
  3. 输入机场提供的订阅链接
  4. 更新并切换配置

开启系统代理

在 Clash 中开启系统代理后,浏览器等应用会自动走代理访问 GitHub。

Git 代理配置

配置好 Clash 后网页能访问 GitHub,但 git push 可能仍然失败——因为 Git 默认不走系统代理,需要单独配置:

查看 Clash 代理端口

Clash 默认的 HTTP/SOCKS5 代理地址通常为:

HTTP:   127.0.0.1:7890
SOCKS5: 127.0.0.1:7891

具体端口以你 Clash 配置中的 mixed-port 为准,也可在 Clash Dashboard 面板中查看。

配置 Git 代理

# 全局配置 HTTP 代理
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890

# 或配置 SOCKS5 代理
git config --global http.proxy socks5h://127.0.0.1:7891
git config --global https.proxy socks5h://127.0.0.1:7891

# 验证配置
git config --global --get http.proxy
git config --global --get https.proxy

取消 Git 代理

git config --global --unset http.proxy
git config --global --unset https.proxy

为 GitHub 单独配置代理

如果只想让 GitHub 走代理,其他仓库不走:

# 只配置 GitHub 的代理
git config --global http.https://github.com.proxy http://127.0.0.1:7890

使用 Clash TUN 模式

Clash 的 TUN 模式可以接管系统所有流量(包括 Git、终端等),无需单独配置 Git 代理:

  1. 在 Clash 中开启 TUN 模式
  2. 设置全局规则或规则模式
  3. 所有应用自动走代理

但 TUN 模式会处理所有流量,如果只想 GitHub 走代理,建议只配置 Git 代理。

SSH 方式走代理

如果使用 SSH 方式连接 GitHub(而非 HTTPS),需配置 SSH 代理:

# 编辑 ~/.ssh/config
Host github.com
    HostName github.com
    User git
    ProxyCommand nc -v -x 127.0.0.1:7891 %h %p
    # 使用 connect 工具(Windows 用户)
    # ProxyCommand connect -S 127.0.0.1:7891 %h %p

测试代理是否生效

# 测试代理连接
curl -x http://127.0.0.1:7890 https://api.github.com

# 测试 Git 连接
ssh -T git@github.com

# 测试 Git pull/push
git pull

总结

Clash + 稳定的机场订阅是目前访问 GitHub 最可靠的方案。关键步骤有三:

  1. 安装 Clash 并导入机场订阅
  2. 开启系统代理或 Clash TUN 模式
  3. 配置 Git 代理(HTTPS 或 SSH 方式)

配置完成后,无论是浏览 GitHub 还是代码推送,都能稳定访问。

上一篇

留言板

Comments | 0条评论