栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

Golang使用私有仓库

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Golang使用私有仓库

在开发中我们经常会引用一些我们自己私有的公共项目。比如私有的common包。一般情况下,引用这些包有两种方式。一种是使用传统的go path,还有一种是使用go mod模式,然后加replace。

这两种方式都会有一些弊端,现在推荐第三种方式,go mod+私有仓库的方式。

如图所示,以git.wbctyun.cn开头的地址,是我们的私有仓库。执行go get时,会首先去我们配置的私有仓库地址拉取项目,然后再从github.com拉取项目。

require (
	git.wbctyun.cn/avnet/vnet-common v1.0.3
	git.wbctyun.cn/avnet/cvnet-utils v1.0.2
	git.wbctyun.cn/avnet/cvpc/vpc-common v1.0.2
	git.wbctyun.cn/avnet/cvpc/vpc-sdk-go v1.0.2
	github.com/dgrijalva/jwt-go v3.2.0+incompatible
	github.com/emicklei/go-restful-openapi/v2 v2.3.0
	github.com/emicklei/go-restful/v3 v3.5.1
	github.com/go-openapi/spec v0.20.3
	github.com/json-iterator/go v1.1.11 // indirect
)

 配置方式:

  • 1.配置go env的全局变量。
// 配置开启gomod
go env -w GO111MODULE="on"
// 配置GoMod私有仓库
go env -w GOPRIVATE="git@git.wbctyun.cn"
// 配置不加密访问
go env -w GOINSECURE="git.wbctyun.cn"
// 配置不使用代理
go env -w GONOPROXY="git.wbctyun.cn"
// 配置不验证包
go env -w GONOSUMDB="git.wbctyun.cn"
  • 2.配置git不以http方式拉取
git config --global url."git@git.wbctyun.cn:".insteadOf "https://git.wbctyun.cn"
  • 3.配置拉取git私有仓库的ssh公私钥。
  • 既可以通过ssh://git@git.wbctyun.cn方式拉取代码。config文件配置参考:
# ctyun
Host git.wbctyun.cn
HostName git.wbctyun.cn
port 2222
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_ijijni_rsa

如果port没有特殊指定,可以不写。

公有仓库使用方式:

如果自己修改过公有仓库,可以推到远程仓库的新分支,如dev-1,然后项目需要引用此公有仓库,则使用命令,go get git.wbctyun.cn/avnet/vnet-common@dev-1,即加上分支号

4.win环境下,go get免密登录方式:

添加环境变量:

 变量值可以按照自己的需求填写。

然后再变量值所指的目录,添加_netrc文件,在文件中填入git私有仓库地址,账号密码:

1为私有仓库地址

2为仓库登录用户

3为密码,可以为访问令牌,或者用户密码

4.mac和linux系统直接在用户目录下配置文件:

vim ~/.netrc,然后添加

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/904132.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号