如何设置 GOPRIVATE 环境变量

我开始开发一个Go项目,它使用 Github 私有存储库中的一些私有模块,每当我尝试运行时,go run main.go它都会出现以下410 Gone错误:

验证 github.com/repoURL/go-proto@v2.86.0+inknown/go.mod:github.com/repoURL/go-proto@v2.86.0+inknown/go.mod:阅读https://sum.golang。 org/lookup/github.com/!repoURL/go-proto@v2.86.0+不兼容:410 消失

我可以轻松地从终端克隆私人存储库,这意味着我的ssh密钥配置正确。我需要设置GOPRIVATE环境变量,但我不知道如何做到这一点。

有人可以回答吗?

Go: v1.13,操作系统: macOS Mojave


繁华开满天机
浏览 221回答 4
4回答

jeck猫

简短回答:go env -w GOPRIVATE=github.com/repoURL/private-repo或者如果您想允许来自您组织的所有私人存储库go env -w GOPRIVATE=github.com/<OrgNameHere>/*长答案:检查“非公共模块的模块配置”以获取更多信息:GOPRIVATE 环境变量控制 go 命令认为哪些模块是私有的(不可公开使用),因此不应使用代理或校验和数据库。该变量是模块路径前缀的逗号分隔的 glob 模式列表(采用 Go 的 path.Match 语法)。例如, GOPRIVATE=*.corp.example.com,rsc.io/private导致 go 命令将路径前缀与任一模式匹配的任何模块视为私有模块,包括 git.corp.example.com/xyzzy、rsc.io/private 和 rsc.io/private/quux。. .“go env -w”命令(请参阅“go help env”)可用于设置这些变量以供将来的 go 命令调用。ssh使用注意事项:如果您使用ssh访问 git 存储库(本地托管),您可能需要将以下内容添加到您的~/.gitconfig:[url "ssh://git@git.local.intranet/"]        insteadOf = https://git.local.intranet/让go命令能够访问 git 服务器。

慕哥9229398

如果 zsh 使用:go env -w GOPRIVATE='gitlab.my_firm_name.com/*'否则得到zsh: no matches found: GOPRIVATE=gitlab.my_firm_name.com/*

Qyouu

只是 ssh 用法的后续,这是用于使其工作的命令:GitHub:git&nbsp;config&nbsp;--global&nbsp;url."git@github.com:".insteadOf&nbsp;"https://github.com/"位桶:git&nbsp;config&nbsp;--global&nbsp;url."git@bitbucket.org:".insteadOf&nbsp;"https://bitbucket.org/"

繁星coding

如果使用 zsh,请/在之前添加通配符,如下所示:&nbsp;go env -w GOPRIVATE=github.com/<OrgNameHere>\/*
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go