在高隆锁定外部依赖关系“版本”的最有效方式是什么?

前端之家收集整理的这篇文章主要介绍了在高隆锁定外部依赖关系“版本”的最有效方式是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
默认情况下,Go通过抓取主(github)中的最新版本或默认(mercurial)来拉取导入的依赖关系,如果找不到您的GOPATH的依赖关系。虽然这个工作流程很简单,但是要把握得很难。因为所有的软件变化都会导致一些风险,我想以可管理和可重复的方式降低这种潜在变化的风险,并避免无意中挑选依赖关系的变化,特别是通过CI服务器运行干净的构建或准备部署时。

什么是最有效的方式可以锁定(即锁定或捕获)一个包依赖关系,所以我不觉得自己无法重现一个旧的包,甚至更糟糕的是,当我即将发布?

—-更新—-

Current State of Go Packaging的附加信息。当我结束(截至7.20.13)捕获依赖关系在第三方文件夹和管理更新(阿拉Camlistore),我仍在寻找更好的方式…

Here is a great list of options

另外,一定要看到go 1.5 vendor/ experiment了解如何去处理未来版本的问题。

你可能会发现 Camlistore这个方法很有趣。

请参阅third party directory,特别是update.pl和rewrite-imports.sh脚本。这些脚本会更新外部存储库,如有必要,请更改导入,并确保外部存储库的静态版本与其余的camlistore代码签入。

这意味着camlistore具有完全可重复的构建,因为它是自包含的,但是第三方组件可以在camlistore开发人员的控制下进行更新。

猜你在找的设计模式相关文章