Go Get 从私有库(比如公司库)获取包

go module 从私有库获取包

go get是读取 go env和git的相关配置来使用 http(s) 或者ssh来拉取源码.

参考的这篇:
GoGet访问私有库配置

总结的是以下几点:

  • go get时必须要与包名匹配, 所以上传的包的名字还是要按固定的来; 比如可以是 firetech/zzk/hs256
  • go get访问包会默认会走 goproxy, 涉及到的 go env变量有 goprivate, gonoproxy等, 如果要直接从指定的url里面拉取go包, 需要添加这两个环境变量;
  • 最重要的, 因为go get会通过 git来拉取, 所以要在 git的配置中配置 url的替换; git insteadof的作用就是将go get地址替换成你指定的实际地址, 就可以不需要域名了;
  • 还有一部分 go get 后面 .git后缀, 拉取的时候要添加;

go mod init firetechgitlab.com/forensics_equipment/misclib

go env GOPRIVATE
go env GOINSECURE

go env -w GOPRIVATE=firetechgitlab.com
路径之间用逗号分隔

go env -w GOINSECURE=firetechgitlab.com

git config --global url."http://192.168.3.22:8083/forensics_equipment/misclib".insteadOf "http://firetechgitlab.com/forensics_equipment/misclib"

go get firetechgitlab.com/forensics_equipment/misclib.git
posted @ 2024-01-26 18:07  潜行1  阅读(634)  评论(0)    收藏  举报