go-mod-upgrade
交互式更新过时的Go依赖
请注意,目前仅支持补丁和小版本更新。
为什么
Go wiki有一个很棒的章节介绍如何升级和降级依赖。 可以运行以下命令
go list -u -f '{{if (and (not (or .Main .Indirect)) .Update)}}{{.Path}}: {{.Version}} -> {{.Update.Version}}{{end}}' -m all 2> /dev/null
来查看直接依赖的可用升级。 不幸的是,输出结果不可直接操作,即我们无法轻松地使用它来更新多个依赖。
此工具旨在使交互式更新多个依赖变得更容易。 这类似于yarn upgrade-interactive,但适用于Go。
安装
Windows、OS X和Linux的预编译二进制文件可在发布页面获取。
或者,使用Go工具链,你可以执行
go install github.com/oligot/go-mod-upgrade@latest
使用方法
在使用模块的Go项目中,现在可以运行
go-mod-upgrade
模块名称的颜色有助于识别更新类型:
- 绿色表示小版本更新
- 黄色表示补丁更新
- 红色表示预发布更新
可以通过CLI全局选项指定其他选项:
全局选项:
--pagesize value, -p value 指定页面大小(默认:10)
--force, -f 在非交互模式下强制更新所有模块(默认:false)
--verbose, -v 详细模式(默认:false)
--hook value 为每个更新的模块执行的钩子
--ignore value, -i value 忽略与给定正则表达式匹配的模块
--help, -h 显示帮助(默认:false)
--version 打印版本(默认:false)