go mod使用


go mod

1. go mod 子命令

命令 功能
download 下载依赖包到本地
edit 修改go.mod文件
graph 输出依赖图
init 当前文件夹下初始化新的mod
tidy 拉取缺少的依赖,删除无用的依赖
vendor 将依赖copy到vendor文件夹
verify 验证依赖
why 解释为什么需要依赖

2. go mod设置代理

  • 设置环境变量
    export GOPROXY=https://mirrors.aliyun.com/goproxy/
  • go1.13使用go env -w 设置 mirror
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

逗号后面可以增加多个 proxy,最后的 direct 则是在所有 proxy 都找不到的时候,直接访问

3. 依赖gitlab等私有库

3.1 设置url

git config --global url."git@gitlab.your-company.com:<your>/<package>.git".insteadOf "https://gitlab.your-company.com/<your>/<package>.git"

依赖本地的 ~/.ssh/id_rsa

3.2 解决go mod或go get时x509: certificate signed by unknown authority错误:

go get私有仓库时会出现如下错误:

go: xxx@v0.0.0-20190918102752-bb51b27911ca: unrecognized import path "xxx" (https fetch: Get https://xxx?go-get=1: x509: certificate signed by unknown authority)

原因是go get的执行过程需要https证书,检查server端证书是未知CA签署的并报错。

  • 解决方法:
    go get -insecure xxx
    这样go get就会通过http协议去访问私库了。
posted @ 2020-02-14 13:42  YYRise  阅读(1539)  评论(0编辑  收藏  举报