Skip to main content

yarn up

升级整个项目的依赖。

用法

$ yarn up ...

示例

将所有 lodash 实例升级到最新版本 :

yarn up lodash

将所有 lodash 实例升级到最新版本,但要求每个实例确认 :

yarn up lodash -i

将所有 lodash 实例升级到 1.2.3 :

yarn up lodash@1.2.3

将所有具有 @babel 范围的软件包实例升级到最新版本 :

yarn up @babel/*

将所有包含单词 jest 的软件包实例升级到最新版本 :

yarn up *jest*

将所有具有 @babel 范围的软件包实例升级到 7.0.0 :

yarn up @babel/*@7.0.0

详情

此命令将整个项目中与指定模式列表匹配的软件包升级到其最新可用版本(无论它们是 dependencies 还是 devDependencies 的一部分

  • peerDependencies 不会受到影响)。这是一个项目范围的命令:所有工作区都将在此过程中升级。如果设置了 -R,--recursive,则命令将更改行为,并且不允许其他切换。在此模式下操作时,yarn up 将强制再次解析与选定软件包匹配的所有范围(通常解析为最高可用版本),然后再将其存储到锁定文件中。但是,它不会再触及你的清单,因此根据你的需要,你可能需要同时运行 yarn upyarn up -R 以覆盖所有基础。如果设置了 -i,--interactive(或者如果 preferInteractive 设置已打开),则命令将根据检测到的升级路径提供各种选择。某些升级需要此标志才能解决歧义。 -C,--caret-E,--exact-T,--tilde 选项与 add 命令中的含义相同(它们会更改范围缺失或标签时使用的修饰符,并在明确设置范围时被忽略)。如果设置了 --mode=<mode> 选项,Yarn 将更改生成的工件。当前支持的模式为:- skip-build 根本不会运行构建脚本。请注意,这与将 enableScripts 设置为 false 不同,因为后者将禁用构建脚本,从而影响磁盘上生成的工件的内容,而前者只会禁用构建步骤 - 但不会禁用脚本本身,因为脚本不会运行。- update-lockfile 将完全跳过链接步骤,仅获取锁定文件中缺少的包(或没有关联校验和的包)。此模式通常由 Renovate 或 Dependabot 等工具使用,以使锁定文件保持最新,而无需承担完整安装成本。通常,你可以将 yarn up 视为 Yarn 1 中 yarn upgrade --latest 的对应项(即,它会忽略清单中先前列出的范围),但与仅升级当前工作区中的依赖的 yarn upgrade 不同,yarn up 将同时升级所有工作区。此命令接受 glob 模式作为参数(如果有效描述符并受 micromatch 支持)。确保转义模式,以防止你自己的 shell 尝试扩展它们。**注意:**范围必须是静态的,只有包范围和名称可以包含 glob 模式。

选项

定义描述

-i,--interactive

根据检测到的升级路径提供各种选择

-F,--fixed

按原样存储依赖标签,而不是解析它们

-E,--exact

不要在解析范围内使用任何 semver 修饰符

-T,--tilde

在解析范围上使用 ~ semver 修饰符

-C,--caret

在解析范围上使用 ^ semver 修饰符

-R,--recursive

再次解决所有问题这些包的解析

--mode #0

更改安装生成的工件