go - 将 Go 依赖模块升级到新的主要版本

标签 go module upgrade

如何将 Go 依赖模块更新/升级到新的主要版本?

  • 我试过go get -v -u github.com/gofiber/fiber但这只会让它升级到 v1.14.6 ,而不是 v2.0.1如其 git 页面所示。
  • 我试过go get -v -u github.com/gofiber/fiber@v2.0.1 ,但出现以下错误:
  • go get github.com/gofiber/fiber@v2.0.1: github.com/gofiber/fiber@v2.0.1: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2
  • 然后我尝试了go get -v -u github.com/gofiber/fiber@v2 ,但得到以下错误:go get github.com/gofiber/fiber@v2: no matching versions for query "v2"

  • 然后我做了一些研究,有些不够详细,错过了重要信息:
  • https://golang.cafe/blog/upgrade-dependencies-golang.html

  • 有些太罗嗦了,谈论了一堆广泛的话题,并没有具体说明将 Go 依赖模块更新为新的主要版本任务:
  • https://blog.golang.org/using-go-modules
  • https://blog.jetbrains.com/go/2020/03/25/working-with-go-modules-versioning/

  • 所以我在想一个简洁而完整的列表,列出将 Go 依赖模块更新到新的主要版本需要做的事情,这对整个 Go 社区都是有益的。

    最佳答案

    比我想象的要简单得多——

  • 替换 github.com/gofiber/fiber 的每个导入与 github.com/gofiber/fiber/v2
  • go get -v ./...

  • 就是这样。不确定这是否是一个完整的列表,但它适用于我的具体情况。
    剩下的只是修复新主要版本所需的任何 API 更改。

    关于go - 将 Go 依赖模块升级到新的主要版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63909735/

    相关文章:

    Go Mod 私有(private) repo

    Python: "import as"关键字错误

    python - 如何使用 Pygame 打包用 Python 制作的 Python 游戏?

    python - 如何在python中不使用 "import"导入

    ruby - Ruby 从 1.8.7 升级到 1.9.3 后出现 Yaml 编码问题

    docker - pip 升级 TooManyRedirects 异常

    json - 通过 STDIN/STDOUT 使用 json 的 websocketd

    mongodb - 在 Go 中将任何编码转换为 UTF 8

    google-app-engine - Go 的运行库文档过时了?

    java - facebook sdk 4.0 相当于 android 中的 Session.StatusCallBack 和 OpenRequest