解决 go get 访问私有仓库的问题
·
- 问题描述:
require 获取私有库包时,需要验证登陆权限,无法获取包
- go mod tidy 导入包失败
- go get 包失败
- go build 有 CHECKSUM 过程,无法编译
- 现象分析:
- go get 不支持代码支持之外的仓库。并且 git 调用链过程采用 https
- 下载过程如果机器设置了 GOPROXY,会导致下载失败
- 编译过程会导致 CHECKSUM 失败
- 解决方法:
- 给仓库打 tag,这样仓库地址可以被识别
- export GOPRIVATE=git@github.com;go build 时,系统不会用 GOPROXY 以及校验 SUM
- 调整 git https 为 ssh
$ git config --global url."git@github.com:".insteadOf "https://github.com/"
$ cat ~/.gitconfig
[url "git@github.com:"]
insteadOf = https://github.com/
$ go get github.com/private/repo && echo Success!
Success!
参考文章:
How to go get
private repos using SSH key auth instead of password auth.
更多推荐
已为社区贡献5条内容
所有评论(0)