由于某些不可描述的原因,国内使用 go get 命令安装某些包的时候会超时导致失败,比如 net 包、 sys 包、 tools 包等。第一种解决办法就是自己从git上下载后添加链接到 GOPATH 中,比如:
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配置:
git config --global --unset http.proxy
 
go get命令使用socket代理
由于某些不可描述的原因,国内使用 go get 命令安装某些包的时候会超时导致失败,比如 net 包、 sys 包、 tools 包等。第一种解决办法就是自己从git上下载后添加链接到 GOPATH 中,比如:
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配置:
git config --global --unset http.proxy
下面看下go get 使用代理的方法
众所周知的原因,go get命令在提取一些工程或依赖时(如golang.org域名)被墙掉。通过使用vpn或代理的方法可以解决。
买VPN
这个就不多说了,买vpn,相当于直接连接。
使用代理
通过shell环境变量
export http_proxy=http://ip:port
go get golang.org/xxx
 
通过设置git代理
这也是go官方指导。
git config –global http.proxy 'http://127.0.0.1:8087'
go get golang.org/xxx
 
若使用goagent代理,请使用设置git代理的方式,且额外执行以下脚本再go get:
git config --global http.sslCAinfo 'pathto/XX-Net-3.6.15/data/gae_proxy/CA.crt'
 
总结
以上所述是小编给大家介绍的Go get命令使用socket代理,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
                            
                            
                                您可能感兴趣的文章:- Go语言中利用http发起Get和Post请求的方法示例
 - 利用dep代替go get获取私有库的方法教程
 - Django objects.all()、objects.get()与objects.filter()之间的区别介绍
 - Go语言Web编程实现Get和Post请求发送与解析的方法详解
 - Go语言服务器开发实现最简单HTTP的GET与POST接口
 - $_GET[''goods_id'']+0 的使用详解
 - 利用Go语言搭建WebSocket服务端方法示例
 - go的websocket实现原理与用法详解
 - golang基于websocket实现的简易聊天室程序
 - Go语言基于Socket编写服务器端与客户端通信的实例
 - 使用Node.js和Socket.IO扩展Django的实时处理功能