Go 1.5 中的包版本管理
在 Go 中,由于缺乏内置的包版本管理,包版本管理一直是一个争论的话题。在溶液中。 Go 开发人员使用 go get 和 import 语句从 HEAD 获取包,限制了他们指定版本或分支的能力。
此限制引发了对包演变、API 破坏和企业采用的担忧。开发人员可能会觉得需要为主要版本创建单独的存储库,并面临降级到早期版本的挑战。此外,Git-repo-per-version 方法可能会导致 Git 历史碎片化和潜在冲突。
Go 1.5 通过供应商功能解决了这些问题。通过创建供应商文件夹并手动导入所需版本的依赖包,开发人员可以控制他们想要的确切版本。这可以防止 HEAD 自动更新引起的意外。
Vendoring 隔离供应商文件夹内的包依赖性,确保包只能从包含供应商文件夹的目录导入。这允许版本锁定并防止意外升级或降级。
要启用供应商,必须在运行 go 命令时设置 GO15VENDOREXPERIMENT=1 环境变量。这个实验性功能将成为 Go 1.6 中的完整功能。
以上是Go 1.5 如何解决包版本管理挑战?的详细内容。更多信息请关注PHP中文网其他相关文章!