Git bash 走代理总结(Http 代理以及 SSH 设置 Http 代理和 Socks 代理)

本贴最后更新于 2068 天前,其中的信息可能已经天翻地覆

说明:由于最近 Github 在国内下载速度只有 20k 左右,搭完梯子后寻找 Git 代理方法,发现网上的方法比较乱,于是总结一下。

1.Http 代理设置

  • 命令: git config --global http.proxy http://127.0.0.1:1087
  • 说明: 全局设置 http 代理
  • 此命令修改的文件为 C:\Users\用户名\.gitconfig (Windows 环境下)
  • 取消设置 git config --global --unset http.proxy
  • 网上还有一种设置 https 代理,如上代码改为 https,但并未发现有效

2.设置 SSH 代理

SSH 代理最大方便之处就是无需输入密码
修改的文件为 C:\Users\用户名\.ssh\config (不存在自行创建)

2.1 设置本地 http 或 sockt 代理

    Host github.com
    ProxyCommand connect -H 127.0.0.1:8100 %h %p # -S为socks
    HostName %h
    Port 22
    User git
    IdentityFile  ~/.ssh/id_rsa 
    IdentitiesOnly yes

说明:此设置应该是需要安装 connect 命令,具体下载地址为 connect.exe
由当时将此文件放到 git 安装目录下的 bin 文件夹下。connect 具体命令参数参考官方说明文档

2.2 其他设置方法

   # 必须是 github.com
   Host github.com
   HostName github.com
   User git
   # 走 HTTP 代理
   # ProxyCommand socat - PROXY:127.0.0.1:%h:%p,proxyport=8080
   # 走 socks5 代理(如 Shadowsocks)
   # ProxyCommand nc -v -x 127.0.0.1:1080 %h %p

此方法走 socket 代理设置有效,http 代理验证会报错

参考文章地址
https://bitbucket.org/gotoh/connect/wiki/Home
https://gist.github.com/chuyik/02d0d37a49edc162546441092efae6a1
https://www.hi-linux.com/posts/11850.html

  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    204 引用 • 357 回帖
  • 后端
    44 引用 • 126 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...