我在北纬36度
Git_bash走代理总结(Http代理以及SSH设置Http代理和Socks代理).md

说明:由于最近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