All Tags
On this page

是时候和npm-check-updates江湖再见了~

#npm
avatar
jerrywu001
创建时间:2023-09-05 06:07:05

相比大家都用过npm-check-updates, 一个可以检查项目package版本是否有更新的工具,截图如下:

image.png

非常nice, 但是由于历史原因,不支持monorepo,并且无法在major/minor/patch模式之间自由选择,不过最近antfu大佬借鉴它开发了taze,一并解决了上述优化点,从而使用体验得到质的飞跃~

废话不多说,下面来简单介绍一下它的用法。

taze安装

一个现代的 cli 工具,让您的部门保持新鲜感

npm i taze -g

# 或者使用npx taze执行检测

常用命令

普通模式

非monorepo

taze

没有看到major信息,是因为taze默认只匹配 minor/patch

打印信息非常详细,包含版本变化,最新发布日期

image.png

taze major

可以看到major被匹配

image.png

taze minor

taze

taze patch

只会匹配patch

image.png

执行更新操作

以上命令只是查看,如果想要执行更新, 命令只要追加 -w即可, 比如taze major -w

image.png

taze monorepo

命令只要追加 -r即可

检查更新

taze major -r

image.png

执行更新

也是追加 -w

taze major -r -w

其他功能

当然除了上述常用指令外,还有一些其他指令:

  • taze -P -> 只匹配dependencies

  • taze -D -> 只匹配devDependencies

  • taze -n -> include功能

    image.png

  • taze -x -> exclude功能

    image.png

  • taze -w -i -> 执行更新后进行install,会提示你选择安装源

  • taze -h 查看所有指令

    image.png

配置文件

配置文件支持绝对属于最大的亮点,直接看代码

import { defineConfig } from 'taze'

export default defineConfig({
  // ignore packages from bumping
  exclude: [
    'webpack'
  ],
  // fetch latest package info from registry without cache
  force: true,
  // write to package.json
  write: true,
  // run `npm install` or `yarn install` right after bumping
  install: true,
  // override with different bumping mode for each package
  packageMode: {
    'typescript': 'major',
    'unocss': 'ignore',
    // regex starts and ends with '/'
    '/vue/': 'latest'
  }
});

最后感谢antfu大佬~🥳