配置 Git 代理

2023-09-04 git proxy

linked list

最近我帮助了一个朋友配置 Git 代理, 一开始发现没有生效,后来发现是配置错了地方。把学到的分享给大家。

一些基础知识

在涉及网络代理时,有两种主要协议要考虑:SOCKS和HTTP。这两种协议都可以与 Git 无缝配合使用。如今,当我们提到SOCKS时,几乎总是指的是SOCKS5。在本文中,我将以SOCKS5作为示例。

Git 还支持两种主要的 URL 协议:HTTP(s) 和 SSH。例如,https://github.com/user/repo.git 是一个 HTTP(s) 远程URL,而 ssh://github.com/user/repo.git 是一个 SSH 远程 URL。

设置代理

让我们深入了解如何使用不同配置来设置Git代理:

Git协议 代理协议 配置文件 配置
HTTP(s) HTTP ~/.gitconfig git config --global http.proxy http://127.0.0.1:1080
HTTP(s) SOCKS ~/.gitconfig git config --global http.proxy socks5h://127.0.0.1:1080
SSH HTTP ~/.ssh/config Host github.com
  ProxyCommand nc -v -X connect -x 127.0.0.1:1080 %h %p
SSH SOCKS ~/.ssh/config Host github.com
  ProxyCommand nc -v -X 5 -x 127.0.0.1:1080 %h %p

一些技巧

以下是一些细节:

总结

设置 Git 代理不必令人生畏,但它确实涉及在不同文件中配置不同的设置。希望能够帮助到大家。


Comments