登录
首页 >  Golang >  Go问答

转到 mod 供应商而不更新到最新版本

来源:stackoverflow

时间:2024-04-09 16:15:33 299浏览 收藏

Golang不知道大家是否熟悉?今天我将给大家介绍《转到 mod 供应商而不更新到最新版本》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!

问题内容

我试图弄清楚是否可以在没有 go 工具更新我的 go.mod 文件的情况下运行 go modvendor。

我特别是 go 获取 package/subpackage@commit 并使用正确的版本提交我的 go.mod

然后我运行 go modvendor,它会自动升级我刚刚专门设置的软件包的版本。

我查看此页面无济于事:https://github.com/golang/go/wiki/modules#how-do-i-use-vendoring-with-modules-is-vendoring-going-离开

我需要使用供应商,因为我运行一个脚本来编辑一些供应商的依赖项。我正在查看以下构建流程:

GO111MODULE=on go get package/subpackge@commit
GO111MODULE=on go mod vendor
./Script/patch_vendors.sh --write
GO111MODULE=off go build

我的另一个选择是修改复制的源代码,无论 go mod 供应商将其下载到哪里,但是 不知道如何解决这个问题。

提前致谢


解决方案


https://tip.golang.org/cmd/go/#hdr-Maintaining_module_requirements

go modvendor 命令复制软件包及其测试的所有传递导入,因此它将自动更新 go.mod 文件以确保所有导入的软件包都存在。

所以这里的问题可能是您为 package/subpackage 选择的 commit 无法提供出现在程序的传递导入中的某些包。如果这是正确的,您应该会发现 go list allgo test allgo mod tidy 都对您的模块要求进行了相同的编辑。

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>