当go get 遇上GFW时……

2020/12/0822:26:34Comments Off on 当go get 遇上GFW时……

一、问题背景

在使用go的小伙伴肯定会发现,当我们愉快的使用go get命令想下载源码包时,发现一直卡着不动,等了半天后,一句Timeout草草结尾了,法克油?

家人们不要慌,此时goproxy给我们已经铺好了路,啥是goproxy?简而言之呢,就是打着合法牌照旗号来下载编译源码了。这还真不是我闭一只眼瞎说的,有链接为证:https://github.com/goproxy/goproxy.cn/

原文如下:

Is Goproxy China legal in China?
Goproxy China is a business-supported project rather than a personal project. And it has been ICP filed in the MIIT of China (ICP license: 沪ICP备11037377号-56), which means it's fully legal in China.

好了,到底是怎么设置后就可以丝滑的下载了呢,人家文章中写得已经很全面了,就知道此刻看文章的你想偷个懒,呐,给你搬过来了

二、设置环境

macOS or Linux

Open your terminal and execute

$ export GO111MODULE=on
$ export GOPROXY=https://goproxy.cn

or

$ echo "export GO111MODULE=on" >> ~/.profile
$ echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
$ source ~/.profile

done.

Windows

Open your PowerShell and execute

C:\> env:GO111MODULE = "on"
C:\>env:GOPROXY = "https://goproxy.cn"

我们来下载一个网络库,它并没有可执行文件生成

$ go get github.com/davyxu/cellnet

三、go get 使用时的附加参数

另外为了方便偷懒专业户,我把go get的附加参数列表也搬过来了

使用 go get 时可以配合附加参数显示更多的信息及实现特殊的下载和安装操作,详见下表所示。

  • 微信扫码赞助
  • weinxin
  • 支付宝赞助
  • weinxin