【发布时间】:2020-02-09 00:20:22
【问题描述】:
这是一个 go 模块问题。 我的电脑正在运行 go 1.13,并且 go 模块模式已打开。
这是我的go env:
GO111MODULE="on"
GOPRIVATE=""
GOPROXY="https://goproxy.io,direct"
一开始我写了一个公共包用于测试并上传到github。然后我“去拿”这个独立包。之后我将其设为私有,甚至从 github 中删除(我尝试了“git clone”但无法再次下载)。但是在我从 github 中删除它之后,我可以“去获取”它。很快我意识到这个包可能缓存在 goproxy.io 或其他代理数据库中。所以我再次设置了 GOPROXY="direct" 和 "go get" 这个包并且失败了。这个动作证明了我的猜测。
现在是我的问题:
- 如何从 goproxy.io 或其他数据库中删除整个包。
- 有没有安全的方式使用go模块,我不想把我的私有代码误上传到其他数据库。
我尝试了 STFW,但一无所获。感谢大家阅读和回答这个问题。
【问题讨论】:
-
您可以使用 Go 模块并将您的包发布到私有存储库。
-
根据goproxy.io homepage,您可以使用
GOPRIVATE=*.corp.example.com明确指定包含私有存储库的域,同时仍使用公共存储库的代理。 -
你公开发布了你的包;它(或至少,那个版本)不是私有包。发布后,任何人都可以下载、保存、重新发布它——这就是互联网,一旦发布,您可以取消发布,但永远无法收回。
标签: go go-modules