DEV Community

Cover image for about clash
Woody
Woody

Posted on

about clash

clash是我从github上下载的翻墙工具 但是我本人并不太understand计算机网络
故而写一下博客

Idea Pycharm VSCODE使用clash代理

Git使用clash代理

你已经在电脑上使用了 Clash 来翻墙,这是一个很好的前提。现在你只需要 让 Git 使用 Clash 的代理,就可以解决 GitHub 连接超时、push/pull 失败的问题了。


✅ 设置 Git 使用 Clash 的代理

🚀 Step 1:确认 Clash 的代理端口(一般是以下其中一个)

打开 Clash(或 Clash for Windows)面板,在 GeneralProxy 页面里,查看以下两个端口:

类型 默认端口
HTTP 代理 7890
SOCKS5 代理 7891

你可以任选其一(推荐 HTTP)。


🚀 Step 2:设置 Git 使用代理(推荐用 HTTP)

在命令行中运行以下命令(假设 Clash 监听在本地端口 7890):

git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
Enter fullscreen mode Exit fullscreen mode

✅ 如果你用的是 SOCKS5 端口(比如 7891),则改成:

git config --global http.proxy socks5://127.0.0.1:7891
git config --global https.proxy socks5://127.0.0.1:7891
Enter fullscreen mode Exit fullscreen mode

🧪 Step 3:测试是否生效

运行以下命令,看是否能成功访问 GitHub:

git ls-remote https://github.com
Enter fullscreen mode Exit fullscreen mode

如果没有报错(如 timeout),说明成功了!


🧹 可选:取消代理配置

如果你不再需要代理(比如在公司局域网),可以取消设置:

git config --global --unset http.proxy
git config --global --unset https.proxy
Enter fullscreen mode Exit fullscreen mode

🧠 补充:永久配置也可以写入 Git 配置文件

你也可以手动编辑:

vim ~/.gitconfig
Enter fullscreen mode Exit fullscreen mode

添加:

[http]
    proxy = http://127.0.0.1:7890
[https]
    proxy = http://127.0.0.1:7890
Enter fullscreen mode Exit fullscreen mode

有了 Clash 的配合,现在你推送 GitHub 就不会卡住或失败了!如果你想自动在 PyCharm 里集成代理推送,也可以告诉我,我可以帮你配置 PyCharm 的 Git 代理。

把github添加到clash代理

要改变 Clash 的代理规则,你可以通过 图形界面(如 Clash for Windows) 或直接修改配置文件(如 config.yaml)的方式。下面我分别讲两种常见方法:


✅ 方法一:使用 Clash 图形界面(Clash for Windows)

  1. 打开 Clash for Windows。

  2. 切换到 "Profiles"(配置文件) 页面,点击当前使用的配置文件旁边的「编辑」按钮 ✏️。

  3. 找到规则区域,添加如下规则(推荐):

   rules:
     - DOMAIN-SUFFIX,github.com,Proxy
     - DOMAIN-SUFFIX,githubusercontent.com,Proxy
     - DOMAIN-KEYWORD,github,Proxy
     - DOMAIN-SUFFIX,gitlab.com,Proxy
     - DOMAIN-SUFFIX,github.io,Proxy
     - DOMAIN-SUFFIX,ghcr.io,Proxy
Enter fullscreen mode Exit fullscreen mode
  1. 修改完后点击 保存 或返回自动保存,然后切换到 "Proxies" 页面检查 github.com:443 是否已走代理。

  2. 如果没生效,重启 Clash for Windows 或重新选择一下配置文件。


✅ 方法二:手动编辑配置文件(适合 Clash Meta、Linux 用户)

  1. 打开你的 Clash 配置文件,一般是 ~/.config/clash/config.yaml 或 Clash Dashboard 上标明的路径。

  2. 找到 rules: 部分,添加规则,例如:

   rules:
     - DOMAIN-SUFFIX,github.com,Proxy
     - DOMAIN-SUFFIX,githubusercontent.com,Proxy
     - DOMAIN-KEYWORD,github,Proxy
     - DOMAIN-SUFFIX,gitlab.com,Proxy
     - DOMAIN-SUFFIX,github.io,Proxy
     - DOMAIN-SUFFIX,ghcr.io,Proxy
     - MATCH,DIRECT  # 留在最后
Enter fullscreen mode Exit fullscreen mode
  1. 保存文件后,重启 Clash 服务或重新加载配置

✅ 可选:使用 Rule-Set(推荐高阶用户)

如果你用的是 Clash Meta 或支持 RuleSet 的版本,可以引用 rule-providers 来更细致控制,比如 GitHub 专用规则集:

rule-providers:
  github:
    type: http
    behavior: domain
    url: https://raw.githubusercontent.com/Loyalsoldier/clash-rules/release/github.yaml
    path: ./ruleset/github.yaml
    interval: 86400

rules:
  - RULE-SET,github,Proxy
  - MATCH,DIRECT
Enter fullscreen mode Exit fullscreen mode

🔁 修改后检查是否生效

你可以打开 Clash 的 Connections 连接页,然后执行:

git clone https://github.com/xxx/xxx.git
Enter fullscreen mode Exit fullscreen mode

看是否出现类似:

github.com:443 → Proxy
Enter fullscreen mode Exit fullscreen mode

这表示走的是代理,说明配置生效 ✅


如果你提供一下你正在使用的 Clash 类型(比如 Clash for Windows / Clash Meta / OpenClash 等),我可以直接给你具体修改方式。是否需要我为你生成一个完整的可直接用的 rules: 示例?

Top comments (0)