# Git代理设置脚本使用指南 ## 概述 Git代理设置脚本是一个跨平台的命令行工具,用于快速配置和管理Git的HTTP/HTTPS代理设置。支持HTTP和SOCKS5代理协议。 ## 快速开始 ### 运行脚本 ```bash python git_proxy.py ``` ## 功能特性 - ✅ **智能检测**: 自动检测当前Git代理设置状态 - ✅ **多协议支持**: 支持HTTP和SOCKS5代理协议 - ✅ **交互式界面**: 友好的中文交互界面 - ✅ **跨平台兼容**: Windows/macOS/Linux全平台支持 - ✅ **默认配置**: 提供常用的默认代理地址 - ✅ **完整功能**: 支持设置、查看、取消代理 ## 使用说明 ### 无代理状态 当系统未设置代理时,脚本会显示: ``` 📋 当前Git代理设置: ---------------------------------------- ❌ 未设置代理 ---------------------------------------- 🎯 请选择操作: 1. 设置代理 2. 退出 ``` 选择 `1` 设置代理,然后按提示输入代理地址。 ### 已有代理状态 当系统已设置代理时,脚本会显示: ``` 📋 当前Git代理设置: ---------------------------------------- HTTP代理: http://127.0.0.1:10808 HTTPS代理: http://127.0.0.1:10808 ---------------------------------------- 🎯 请选择操作: 1. 取消当前代理设置 2. 重新设置代理 3. 退出 ``` ### 代理地址格式 脚本支持以下代理地址格式: - **HTTP代理**: `http://127.0.0.1:10808` 或 `127.0.0.1:10808` - **SOCKS5代理**: `socks5://127.0.0.1:10808` - **自动检测**: 如果不指定协议前缀,脚本会提示选择协议类型 ### 协议选择 当输入不带协议前缀的地址时,脚本会提示选择: ``` 🔧 请选择代理协议: 1. HTTP/HTTPS 2. SOCKS5 请输入选择 (1-2): ``` ## Git命令说明 脚本会自动执行以下Git配置命令: ### 设置代理 ```bash # HTTP代理示例 git config --global http.proxy 'http://127.0.0.1:10808' git config --global https.proxy 'http://127.0.0.1:10808' # SOCKS5代理示例 git config --global http.proxy 'socks5://127.0.0.1:10808' git config --global https.proxy 'socks5://127.0.0.1:10808' ``` ### 取消代理 ```bash git config --global --unset http.proxy git config --global --unset https.proxy ``` ## 常见代理配置 | 代理软件 | 默认地址 | 协议类型 | |---------|---------|---------| | Clash | 127.0.0.1:7890 | HTTP | | V2Ray | 127.0.0.1:10808 | HTTP/SOCKS5 | | Shadowsocks | 127.0.0.1:1080 | SOCKS5 | | 本地HTTP代理 | 127.0.0.1:8080 | HTTP | ## 系统要求 - Python 3.6+ - Git (已安装并在PATH中) - 支持的操作系统: - Windows 10/11 - macOS 10.14+ - Linux (Ubuntu, CentOS, Debian等) ## 注意事项 1. **全局配置**: 脚本使用 `--global` 参数,会影响当前用户的所有Git仓库 2. **权限要求**: 无需管理员权限,仅修改用户级Git配置 3. **网络环境**: 确保代理服务器正常运行且端口可访问 4. **退出方式**: 使用 `Ctrl+C` 可随时安全退出脚本 ## 故障排除 ### 常见问题 **问题**: 提示"未找到Git" **解决**: 确保Git已正确安装并添加到系统PATH环境变量中 **问题**: 代理设置后仍无法访问远程仓库 **解决**: - 检查代理软件是否正常运行 - 验证代理地址和端口是否正确 - 确认代理协议类型是否匹配 **问题**: SOCKS5代理无法工作 **解决**: - 确保Git版本支持SOCKS5代理(Git 2.10+) - 检查代理服务器是否支持SOCKS5协议 ### 手动验证 可以使用以下命令手动检查Git代理配置: ```bash # 查看当前代理设置 git config --global --get http.proxy git config --global --get https.proxy # 测试Git连接 git ls-remote https://github.com/git/git.git ``` ## 高级用法 ### 仅为特定域名设置代理 如果只想为GitHub等特定网站设置代理,可以手动配置: ```bash # 仅为GitHub设置代理 git config --global http.https://github.com.proxy http://127.0.0.1:10808 # 取消特定域名代理 git config --global --unset http.https://github.com.proxy ``` ### 临时使用代理 对于单次Git操作,可以使用环境变量: ```bash # 临时使用HTTP代理 https_proxy=http://127.0.0.1:10808 git clone https://github.com/user/repo.git # 临时使用SOCKS5代理 https_proxy=socks5://127.0.0.1:10808 git clone https://github.com/user/repo.git