解决go mod私有仓库拉取的问题
短信预约 -IT技能 免费直播动态提醒
用go mod的时候应该会遇到无法拉取私有仓库的问题
从你gitlab平台生成一个token,在~/.gitcoinfig中[http]下增加extraheader = PRIVATE-TOKEN: 你的token
[url]下增加 insteadOf = https://gitlab.你的gitlab服务器.com
如果还不生效则增加环境变量后尝试:export GOPRIVATE=gitlab.你的gitlab服务器.cn
补充:go module 引用码云(或其他私有仓库)的配置
go1.13开始引入了go mod包管理。go1.16开始默认开启go mod,以下总结在使用go mod 时,引用私有仓库或本地仓库出现的问题。此处以windows环境为例,Linux操作类似。
私有仓库(如码云/gitlab)首先要保证配置过ssh私钥,即通过git可以直接拉取到私有仓库。
系统环境变量中加入GOPRIVATE变量,值为要过滤的私有地址,如*gitee.com。此处配置作用是通过代理拉取module时过滤掉码云的地址,不通代理拉取私有仓库地址。
此时项目中已经可以正常拉取私有仓库
PS D:\go\class="lazy" data-src\test\TESTS\test43> go mod init
go: creating new go.mod: module test/TESTS/test43
go: to add module requirements and sums:
go mod tidy
PS D:\go\class="lazy" data-src\test\TESTS\test43> go mod tidy
go: finding module for package gitee.com/xxxxx/xxxxx
go: found gitee.com/xxxxx/xxxxx in gitee.com/xxxxx/xxxxx v0.0.0-20200805075307-22c2dee8df32
go.mod文件:
module test/TESTS/test43
go 1.16
require gitee.com/xxxxx/xxxxx v0.0.0-20200805075307-22c2dee8df32
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341