小智 14
https://docs.npmjs.com/cli/v8/commands/npm-outdated#description
\n\n\n\n
\n- 红色表示\xe2\x80\x99s 有一个较新的版本符合您的 semver 要求,因此您应该立即更新。
\n- 黄色表示\xe2\x80\x99s 有高于您的 semver 要求的较新版本(通常是新的主要版本,或新的 0.x 小版本),因此请谨慎操作。
\n
rob*_*lep 12
在依赖于Github托管的软件包时你必须要小心:如果你只是指向master软件包的分支(这是添加这些依赖项时的默认软件包),那么当分支是这样的时候,你会遇到各种各样的麻烦.更新,它要么不起作用(它发生),要么打破向后兼容性(也会发生).
我想这就是npm试图告诉你的.
FWIW,当你处理Github托管的依赖项时,你应该总是在特定的commit/tag/sha中包含一个标识符.有关更多文档,请参阅此 虽然我怀疑这npm也不会将这些URL标记为红色,因为任何这些标识符仍然可能无效.
编辑:也许不完全.
仔细看一下它,如果安装的版本没有(semver-)匹配所设置的版本,它将显示红色的包名称package.json.在Github托管包的情况下,这些可能永远不会匹配,因此是红色.
当安装的版本与所需版本匹配时使用黄色,但NPM存储库中有更新版本.
小智 10
由于 SemVer ^xyz 插入符号格式,红色明确表示软件包已过期,需要升级。黄色表示软件包也已过时,但要升级,可能会有重大更改....
所有红色的包都应该先升级,然后再升级黄色的,因为有可能破坏更改。
https://realguess.net/2014/12/13/update-outdated-npm-packages/
更新 - 截至 2019 年 2 月 27 日,我遇到了同样的问题,转移到纱线并得到以下信息:
> yarn outdated
yarn outdated v1.13.0
info Color legend :
"<red>" : Major Update backward-incompatible updates
"<yellow>" : Minor Update backward-compatible features
"<green>" : Patch Update backward-compatible bug fixes
...
Run Code Online (Sandbox Code Playgroud)
请阅读小写字母...红色是向后不兼容的 Npm 遵循相同的颜色语义。
与上面的答案不同,所有过时的软件包都可以更新。这是一个项目特定的升级政策决定。
希望有帮助