Git代理设置,永久代理,临时代理,MAC,Windows

BKT 发表于 - 2 分钟阅读 - 681 个字

1. 临时设置

打开 Git Bash,使用命令临时设定socks代理:

git config --global http.proxy 'socks5://127.0.0.1:10808'
git config --global https.proxy 'socks5://127.0.0.1:10809'

或者http代理:

git config --global http.proxy 'http://127.0.0.1:10809'  # 最新的git不能加单引号
 
git config --global https.proxy 'https://127.0.0.1:10809'

取消设置

git config --global --unset http.proxy

git config --global --unset https.proxy

直接在命令中使用

git clone -c http.proxy="127.0.0.1:xxxx" https://github.com/Gump8/xxxx.git
git -c http.proxy="127.0.0.1:xxxx" fetch upstream

2. 永久设置

若想要设置代理永久生效,则可以把它写入 .gitconfig 文件中。

使用 vi 打开 .gitconfig 文件:

vi ~/.gitconfig

写入下列配置(建议在最末写入):

[http]
proxy: socks5://127.0.0.1:socks5端口号
proxy: http://127.0.0.1:http端口号
 
[https]
proxy: socks5://127.0.0.1:socks5端口号
proxy: https://127.0.0.1:http端口号

修改后重启 git ,使配置生效:

git config -l --global

查看当前代理:

git config -l

可以看到自己所配置的端口信息,则说明配置成功。

3. MAC下SSH设置

https访问 仅为github.com设置socks5代理(推荐这种方式, 公司内网就不用设代理了, 多此一举):

git config --global http.https://github.com.proxy socks5://127.0.0.1:1086

其中1086是socks5的监听端口, 这个可以配置的, 每个人不同, 在macOS上一般为1086. 设置完成后, ~/.gitconfig文件中会增加以下条目:

[http "https://github.com"]
    proxy: socks5://127.0.0.1:1086

ssh访问 需要修改~/.ssh/config文件, 没有的话新建一个. 同样仅为github.com设置代理:

Host github.com
    User git
    ProxyCommand nc -v -x 127.0.0.1:1086 %h %p

如果是在Windows下, 则需要个性%home%.ssh\config, 其中内容类似于:

Host github.com
    Hostname ssh.github.com
    User git
    Port 443  # 默认22,端口不支持时加此行
    PreferredAuthentications publickey #可选
    IdentityFile ~/.ssh/id_rsa
    ProxyCommand connect -S 127.0.0.1:7890 %h %p #可选

这里-S表示使用socks5代理, 如果是http代理则为-H. connect工具git自带, 在\mingw64\bin\下面.

comments powered by Disqus