使用proxy解决WSL连接不上github下载资源的问题

本文介绍了如何在Windows子系统Linux(WSL)中配置proxy,以便解决WSL1无法连接到GitHub的问题。通过设置环境变量和修改apt配置文件,使用127.0.0.1作为hostip和指定的win proxy端口号,可以实现WSL通过win的proxy工具访问GitHub。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WSL 使用proxy连接Github

WSL是win10/win11自带的Linux系统,经常开发时需要用到,但经常碰到无法连接GitHub下载资源的问题,本文介绍通过proxy来解决这个问题。
问题描述:
1.win中已有 proxy工具和端口号,win能够通过web连接到github,此处不用多说;
2. win开启proxy但WSL1连接不上 github

WSL1 开启 proxy步骤

WSL1可以直接通过本地host 127.0.0.1 利用win路径访问到github;所以使用 hostip + port方式可以解决问题

 export hostip=127.0.0.1 
 export hostport=10808 // 取决于win的proxy工具设置的端口号
 export HTTPS_PROXY="socks5://${hostip}:${hostport}";
 export HTTP_PROXY="socks5://${hostip}:${hostport}";
 export ALL_PROXY="socks5://${hostip}:${hostport}";

或者直接在
~\.bashrc中添加

 # add for proxy
 export hostip=127.0.0.1
 export hostport=10808
 alias proxy='
     export HTTPS_PROXY="socks5://${hostip}:${hostport}";
     export HTTP_PROXY="socks5://${hostip}:${hostport}";
     export ALL_PROXY="socks5://${hostip}:${hostport}";
     echo -e "Acquire::http::Proxy \"http://${hostip}:${hostport}\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf >     /dev/null;
     echo -e "Acquire::https::Proxy \"http://${hostip}:${hostport}\";" | sudo tee -a /etc/apt/apt.conf.d/proxy.conf >     /dev/null;
 '
150 alias unproxy='
151     unset HTTPS_PROXY;
152     unset HTTP_PROXY;
153     unset ALL_PROXY;
154     sudo sed -i -e '/Acquire::http::Proxy/d' /etc/apt/apt.conf.d/proxy.conf;
155     sudo sed -i -e '/Acquire::https::Proxy/d' /etc/apt/apt.conf.d/proxy.conf;
156 '
### 如何从GitHub下载Release版本 可以从以下几个方面了解如何从GitHub下载发布的版本: #### 方法一:通过网页界面直接下载 用户可以直接访问目标项目的 **Releases** 页面,找到所需的版本并点击对应的资产(Assets)进行下载。如果希望加速下载流程,可以复制文件地址并通过第三方工具或服务实现加速功能[^1]。 #### 方法二:使用命令行工具 `Github-Release` 对于熟悉命令行操作的开发者而言,`Github-Release` 是一款优秀的开源工具,能够显著简化与 GitHub Releases 的交互过程。该工具支持创建、编辑、上传以及删除 Release 版本的功能,并且可以通过 CLI 高效完成这些任务[^2]。例如,安装完成后可运行如下命令获取指定项目的最新 Release 文件: ```bash github-release info --user <用户名> --repo <仓库名> ``` #### 方法三:编写自动化脚本 为了进一步提升效率,特别是针对频繁更新的项目,可以借助 Python 编写自动化脚本来定期抓取最新的 Release 并执行特定动作(如固件刷入)。以下是一个基于 Espressif esp-at 仓库的例子,展示如何利用 GitHub REST API 实现自动化的 Release 固件下载逻辑[^3]: ```python import requests def download_latest_release(owner, repo, filename): url = f"https://api.github.com/repos/{owner}/{repo}/releases/latest" response = requests.get(url) assets = response.json().get('assets', []) for asset in assets: if asset['name'] == filename: download_url = asset['browser_download_url'] with open(filename, 'wb') as file: file.write(requests.get(download_url).content) break download_latest_release("Espressif", "esp-at", "example-firmware.bin") ``` 以上方法提供了多种途径帮助用户便捷地获取 GitHub 上的 Release 版本资源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值