当前位置: 首页 > 面试题库 >

如何设置GOPRIVATE环境变量

边浩波
2023-03-14
问题内容

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

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

我可以轻松地从终端克隆私人仓库,这意味着我的ssh密钥配置正确。我在这里读到我需要设置GOPRIVATE环境变量,但是我不确定该怎么做。

任何人都可以回答或指向相关教程吗?

转到: v1.13, 操作系统: macOS Mojave


问题答案:

简短答案:

go env -w GOPRIVATE=github.com/repoURL/private-repo

要么

如果要允许您组织中的所有私人回购

go env -w GOPRIVATE=github.com/<OrgNameHere>/*

长答案:

有关更多信息,请检查“非公共模块的模块配置”:

GOPRIVATE环境变量控制go命令认为哪个模块是私有的(不可公开获得),因此不应使用代理或校验和数据库。该变量是模块路径前缀的逗号分隔的全局模式列表(按照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 repo(本地托管),则可能需要在您的服务器上添加以下内容~/.gitconfig

[url "ssh://git@git.local.intranet/"]
       insteadOf = https://git.local.intranet/

使go命令能够访问git服务器。



 类似资料:
  • 问题内容: 我的视图中有三个按钮。在viewDidLoad()中设置cornerRadus之后:我在日志中收到以下错误消息: 问题: 如何设置CG_CONTEXT_SHOW_BACKTRACE环境变量? 或者如何解决此警告? 好吧,现在我已经从消息中得到了回溯。这对我来说没有任何意义。请帮忙… 问题答案: 这是9b5中的错误:https://forums.developer.apple.com/t

  • 问题内容: 我使用martini在Go中有一个GAE应用程序。我需要能够设置环境变量以告诉martini它应该使用生产设置进行初始化。根据Python文档,您可以在app.yaml中设置环境变量。我没有在Go docs中 看到任何有关此的内容,但我猜想它应该可以正常工作。 我需要能够将环境变量设置为,但是我只想在实际投入生产时(即)进行操作。有什么方法可以告诉您仅在非开发服务器上运行吗? 问题答案

  • 问题内容: 如何从Java设置环境变量?我看到我可以使用来对子流程执行此操作ProcessBuilder。不过,我有几个子流程要启动,所以我宁愿修改当前流程的环境,并让这些子流程继承它。 有一个获取单个环境变量的方法。我还可以使用获取Map完整的环境变量集。但是,调用put()该方法Map将引发-显然,这意味着该环境是只读的。而且,没有。 那么,有什么方法可以在当前运行的进程中设置环境变量?如果是

  • 问题内容: 我需要在python脚本中设置一些环境变量,并且我希望从python调用的所有其他脚本(shell脚本)(将是子进程)来查看设置的环境变量。该值为数字。 如果这样做,它会抱怨说1必须是字符串。我也想知道一旦设置它,如何在python(在脚本的后半部分)中读取环境变量。 问题答案: 你可能需要考虑其他方面的代码健壮性; 当你将整数值的变量存储为环境变量时,请尝试 然后为了进行检索,请考虑

  • 问题内容: 对于Windows,我的Node脚本应如下所示: 但是在Linux上没有,所以会像这样: 有没有办法以一致且跨平台的方式声明环境变量? 问题答案: 我最近遇到了跨环境项目。这很简单 这会将环境变量设置为,而不管操作系统是什么。

  • 问题内容: 如何从内部设置一些环境变量以与类似命令一起使用? 这是我目前所拥有的: 我想在启动脚本中设置环境变量(例如),同时仍然能够仅通过一个命令来启动应用程序。 问题答案: 在脚本命令中设置环境变量: 然后在您的应用中使用。 注意:确保它可以跨平台工作。如果只关心Mac / Linux,则可以忽略它。