编程并不是一个机械性的工作,而是需要有思考,有创新的工作,语法是固定的,但解决问题的思路则是依靠人的思维,这就需要我们坚持学习和更新自己的知识。今天编程网就整理分享《Vgo 和私有存储库》,文章讲解的知识点主要包括,如果你对Golang方面的知识点感兴趣,就不要错过编程网,在这可以对大家的知识积累有所帮助,助力开发能力的提升。
问题内容我试图将 vgo 引入到我们公司的一些项目中进行依赖管理,但我遇到了一些与私有存储库相关的问题。
假设我们有以下代码结构:
转到/src/公司名称/projectA/ 转到/src/公司名称/projectB/ 转到/src/公司名称/projectC/
所有三个项目都有不同的 git 存储库,并且项目 A 导入项目 B。
使用正常的 go build
方法,只要我们有这些目录(在 git 下),一切都可以正常工作,但是我们无法使其与 vgo 包装器一起工作。
在 vgo build
上抛出以下错误:
companyName/projectA/ 找不到提供包companyName/projectB/ 的模块
这是有道理的,因为使用 vgo get -v
我可以看到 vgo 尝试从 https://companyName
获取元标记,而该标记不能因公司政策而公开。
告诉 vgo 使用文件系统内容(如果源文件已经存在)或为某些导入路径指定 git 存储库的最佳方法是什么?
解决方案
解决此问题的一种方法是通过 goproxy
环境变量,该变量可以设置为本地文件。
export GOPROXY=file:///path/to/cache
欲了解更多信息,请查看; https://github.com/golang/go/blob/master/src/cmd/go/testdata/mod/README
今天关于《Vgo 和私有存储库》的内容介绍就到此结束,如果有什么疑问或者建议,可以在编程网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!