Go module 使用私有库配置

2020/08/04 Go

Go module 使用私有库配置

本次配置Go版本是1.14.4,Git版本2.24.3,操作系统是macOS。

由于GOPROXY代理的是开源项目,可以不用授权就能go get下来,所以国内一般配置GOPROXY参数为: export GOPROXY=https://goproxy.cn 这样配置在国内拉取依赖会快很多,GOPROXY不配置的,默认https://goproxy.io,这个是在国外,所以速度会很慢。 如果你的依赖项目是在自己域名下部署的(github.com,gitlab.com同理),例如,我的项目下依赖git.abc,com/app/golibs.git这个项目,那么我应该配置如下,我的环境变量在.bash_profile文件中,我用vim编辑这个文件,增加全局变量GOPRIVATE: export GOPRIVATE=git.abc.com 这样配置后,保存.bash_profile文件,执行source .bash_profile,把刚才添加的变量应用到全局中。这样你项目中所有依赖git.abc.com前缀的,都不通过代理拉取。

另外,这样配置后拉取git.abc.com的项目依赖也可能报错:主要是go module默认拉取远端的的方式是https的方式,在本地开发环境中,我们一般用ssh方式拉取代码。这个需要将本地生成的ssh密钥配置到远端。同时需要在.gitconfig文件下添加:

[url "ssh://[email protected]:"]
        insteadOf = https://git.abc.com/

这样配置就可以了,再去项目下go build会自动拉取依赖,也不会报错了。

Search

    欢迎关注我的微信公众号

    够浪程序员

    Table of Contents