【发布时间】:2017-03-30 00:39:54
【问题描述】:
【问题讨论】:
标签: javascript npm npm-install semantic-versioning
【问题讨论】:
标签: javascript npm npm-install semantic-versioning
next 是在您的参考 npm 注册表中发布的版本或标签
npm install 安装一个包。
A package is:
...
d) a <name>@<version> that is published on the registry (see npm-registry) with (c)
e) a <name>@<tag> (see npm-dist-tag) that points to (d)
...
您可以通过运行以下命令查看每个 dist-tag 指向的版本:
npm view <package_name> dist-tags
npm dist-tags ls <package_name>
例如对于react npm 包:
npm view react dist-tags
输出:
{
latest: '17.0.2',
next: '18.0.0-rc.0-next-3dc41d8a2-20211223',
experimental: '0.0.0-experimental-3dc41d8a2-20211223',
beta: '18.0.0-beta-24dd07bd2-20211208',
rc: '18.0.0-rc.0'
}
【讨论】:
dist-tags:npm view foo dist-tags
npm dist-tag ls [package]
接下来是tag。查看以下可能的命令。
在安装包时可以使用标记作为对版本的引用,而不是使用特定的版本号:
npm install [<@scope>/]<name>
npm install [<@scope>/]<name>@<tag>
npm install [<@scope>/]<name>@<version>
npm install [<@scope>/]<name>@<version range>
它是如何添加到包中的?
见dist-tag
npm dist-tag add <pkg>@<version> [<tag>]
npm dist-tag rm <pkg> <tag>
npm dist-tag ls [<pkg>]
【讨论】:
将@next 标记附加到包名称会安装即将发布的版本,该版本可能不稳定。
来自npm-dist-tag 的 npm 文档:
标签可用于提供别名而不是版本号。
例如,一个项目可能选择有多个流 开发并为每个流使用不同的标签,例如,稳定的, 测试版、开发版、金丝雀。
默认情况下,npm 使用 latest 标签来标识当前 包的版本和 npm install (没有任何 @ 或 @specifier) 安装最新的标签。通常,仅项目 对稳定版本使用 latest 标签,对其他标签使用 不稳定的版本,例如预发布版本。
一些项目使用下一个标签来标识即将到来的 版本。
除了 latest,没有任何标签对 npm 本身有任何特殊意义。
【讨论】: