无法使用 go 模块更新单个包

我在根目录中有 2 个带有 go.mod 的项目。一个是https://github.com/Gohryt/Impossible.go 下一个是requirego.mod 中不可能的东西

我通过重命名一对变量进行了简单的提交。我的第二个模块需要这个变量,我也在那里重命名了它。但我没有找到任何类似go mod update,的命令,go mod tidy而且我不能使用新的变量名称。我试过tidy了,但它什么也没做。在来自互联网的一些指南中,我发现我应该在 go mod 中重命名版本,然后 tidy 应该可以工作,但它的名字很像v0.0.0-20210101010359-ec9f21b49366,我真的猜不出新名字是什么样的。

是否有任何正常的方法来更新模块,或者我应该在第一次使用后每次都使用旧版本的依赖项?

我尝试了 name version with latest,但 go mod tidy 又什么也没做。


犯罪嫌疑人X
浏览 104回答 2
2回答

跃然一笑

如果模块 A 需要模块 B,而您的程序同时需要这两者……您将需要确保模块 A 需要模块 B 的正确版本。这是我最终经常做的一些事情,以使所有内容按照我想要的方式保持同步。要升级模块,首先进入存储库...升级所有模块:go get -v -u ./...将某个模块升级到最新提交:go get -v -u github.com/user/repo@master将某个模块升级到某个分支:go get -v -u github.com/user/repo@develop然后在最后输入:go mod tidy将更改提交到您的存储库,并考虑一个新标签。git commit -v -agit tag v0.0.2git push origin branch --tags然后,回到您的程序存储库.. 并执行相同的步骤,但请确保您导入的模块在运行该-v -u命令时说出正确的标签。并确保您的go.sum,go.mod文件没有来自旧模块的额外内容。更多信息在这里https://blog.golang.org/publishing-go-modules。

ibeautiful

我会做go get -u "{package_name}@{git_commit_hash}"例如,go get -u "gopack@1fdd851775f2bc513003d46850c56cb77d8e297b"-u 标志是更新已经安装的包。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go