Go 项目推荐之喜欢 yarn 交互模式更新依赖的 gopher 有福了

Posted Go语言中文网

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go 项目推荐之喜欢 yarn 交互模式更新依赖的 gopher 有福了相关的知识,希望对你有一定的参考价值。

使用过 yarn 的朋友,应该知道 yarn upgrade-interactive,用于交互式更新依赖。今天推荐一个类似的库,不过用于 Go Module。

请注意,目前只支持补丁(patch)和次要更新(minor updates)。

设计该库的目的

Go Wiki 在 如何升级和降级依赖关系: https://github.com/golang/go/wiki/Modules#how-to-upgrade-and-downgrade-dependencies 文档中,介绍了一个命令:

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。

安装

$ go get -u github.com/oligot/go-mod-upgrade

使用

在使用模块的 Go 项目中,你现在可以运行:

$ go-mod-upgrade

这样就会出现类似上图的界面。其中颜色有助于标识更新类型:

  • 绿色进行较小的更新(minor update)
  • 黄色,用于补丁更新(patch)
  • 红色表示预发行更新(prerelease)

交互界面中,通过空格键选中某个包,上下箭头移动待选择包,还支持直接输入进行包的过滤。选中后回车,就会开始更新。

不过这个工具没法控制升级 patch 还是 minor update。


文末「阅读原文」可直达项目首页。


今天的项目大家觉得怎么样吗?如果你喜欢,请在文章底部留言、点赞或关注转发,你的支持就是我持续更新的最大动力!


推荐阅读





OpenSourceDaily - 送给爱开源的你

Git · GitHub · GitLab · Gitee


以上是关于Go 项目推荐之喜欢 yarn 交互模式更新依赖的 gopher 有福了的主要内容,如果未能解决你的问题,请参考以下文章

Go 1.14解决Go Modules模式下更新私有库问题

Yarn管理项目依赖包

基础概念 之 Spark on Yarn

yarn.lock文件

项目中的yarn.lock文件的作用

go中设计模式之结构型模式