拥有yarn outdated
的信息量很大,但我想避免一个包一个包的运行yarn upgrade
。
从 yarn 的文档中,yarn upgrade
据说只是不带参数升级所有依赖项,但我的项目没有变化,package.json
并且yarn outdated
显示的包版本与以前相同。
是否有一些命令或参数会影响我的所有依赖项?
如果不是,是否以某种方式不鼓励这种做法?
拥有yarn outdated
的信息量很大,但我想避免一个包一个包的运行yarn upgrade
。
从 yarn 的文档中,yarn upgrade
据说只是不带参数升级所有依赖项,但我的项目没有变化,package.json
并且yarn outdated
显示的包版本与以前相同。
是否有一些命令或参数会影响我的所有依赖项?
如果不是,是否以某种方式不鼓励这种做法?
将所有软件包升级到最新版本
yarn upgrade --latest
yarn upgrade
您可以使用不带任何参数的方式将您的包更新到 package.json 中指定的最新版本。
这取自文档:
yarn upgrade
此命令根据 package.json 文件中指定的版本范围将所有依赖项更新为其最新版本。yarn.lock 文件也将被重新创建。
这将只更新允许在 package.json 中升级的包,例如使用^
(例如,如果它存在^0.13.0
,将更新到版本)。0.14.0
这不会更新您的 package.json 文件,但会更新 yarn.lock。
如果您想将依赖项更新到最新版本,您可以使用npm-check-updates
将更新您的 package.json 的包:
$ yarn global add npm-check-updates
$ npm-check-updates -u
$ yarn upgrade
只需运行yarn upgrade-interactive --latest
并使用空格按钮选择要更新的软件包,然后按 Enter 进行更新。
如果您的依赖项使用范围版本("^x.x.x"
,"~x.x.x"
等),package.json
如果最新版本也匹配该范围,则不会更新您的,只有您的yarn.lock
.
如果您希望package.json
更新:
"x.x.x"
)yarn
以更新yarn.lock
yarn upgrade-interactive
并选择要升级的所有依赖项现在您的yarn.lock
和package.json
将反映确切的最新版本。
回答 yarn v2 用户。
interactive-tools
如果您还没有,请导入插件:
$ yarn plugin import interactive-tools
并运行它:
$ yarn upgrade-interactive
注意:这也会修改你的package.json
.