1. 程式人生 > >【轉】go get命令使用socket代理

【轉】go get命令使用socket代理

由於某些不可描述的原因,國內使用go get命令安裝某些包的時候會超時導致失敗,比如net包、sys包、tools包等。第一種解決辦法就是自己從git上下載後新增連結到GOPATH中,比如:

1
2
3
4
5
6
7
8
9
git clone https://github.com/golang/net.git $GOPATH/src/github.com/golang/net

git clone https://github.com/golang/sys.git $GOPATH/src/github.com/golang/sys

git clone https://github.com/golang/tools.git $GOPATH/src/github.com/golang/tools

ln -s $GOPATH/src/github.com/golang $GOPATH/src/golang.org/

cd $GOPATH/src/golang.org/  && mv golang x

 

另外就是使用代理,網上大多是使用http代理,這裡記錄下如何使用socket代理。go get命令其實也是利用了git命令進行下載,不過下載後會自動編譯安裝,所以首先設定git的代理:

git config --global http.proxy socks5://127.0.0.1:7070

然後

http_proxy=socks5://127.0.0.1:7070 go get xxxx

就可以了。

恢復的話可以重置git配置:

1
git config --global --unset http.proxy

原文連結如下:http://www.hi-roy.com/2018/10/12/go-get%E5%91%BD%E4%BB%A4%E4%BD%BF%E7%94%A8sock