pnpm update
别名: up
, upgrade
pnpm update
根据指定的范围将包更新到最新版本。
在没有参数的情况下使用时,会更新所有依赖项。
TL;DR
命令 | 含义 |
---|---|
pnpm up | 更新所有依赖项,遵守 package.json 中指定的范围 |
pnpm up --latest | 将所有依赖项更新到最新版本 |
pnpm up foo@2 | 将 foo 更新到 v2 上的最新版本 |
pnpm up "@babel/*" | 更新 @babel 范围下的所有依赖项 |
使用模式选择依赖项
您可以使用模式来更新特定的依赖项。
更新所有 babel
包
pnpm update "@babel/*"
更新所有依赖项,除了 webpack
pnpm update "\!webpack"
模式也可以组合使用,因此下一个命令将更新所有 babel
包,除了 core
pnpm update "@babel/*" "\!@babel/core"
选项
--recursive, -r
在所有具有 package.json
的子目录(不包括 node_modules)中并发运行更新。
用法示例
pnpm --recursive update
# updates all packages up to 100 subdirectories in depth
pnpm --recursive update --depth 100
# update typescript to the latest version in every package
pnpm --recursive update typescript@latest
--latest, -L
将依赖项更新到其最新稳定版本,由其 latest
标签确定(可能跨主要版本升级包),只要 package.json
中指定的版本范围低于 latest
标签(即它不会降级预发布版本)。
--global, -g
更新全局包。
--workspace
尝试链接工作区中的所有包。版本更新为与工作区内包的版本匹配。
如果更新了特定包,则如果任何更新的依赖项未在工作区内找到,则命令将失败。例如,以下命令如果 express
不是工作区包,则会失败
pnpm up -r --workspace express
--prod, -P
仅更新 dependencies
和 optionalDependencies
中的包。
--dev, -D
仅更新 devDependencies
中的包。
--no-optional
不要更新 optionalDependencies
中的包。
--interactive, -i
显示过时的依赖项并选择要更新的依赖项。