如何安装 npm 包的最新可用版本?'@latest' 肯定不会获取最新的 - 我认为这意味着最新的稳定版或其他东西。
我一直在使用 hack 一段时间,因为我似乎找不到任何关于此的信息:
npm i extract-text-webpack-plugin@X
Run Code Online (Sandbox Code Playgroud)
“X”导致它失败并转储所有可能的版本,然后我复制并粘贴正确的版本而不是“X”。有点可笑。
我已经尝试过诸如“最新版本”之类的 3rd 方软件包,但它们都无法获得最新版本。
似乎没有官方这样做。例如在撰写本文时,extract-text-webpack-plugin的最新版本是2.0.0-beta.4。但是这样做:
npm i extract-text-webpack-plugin@latest
Run Code Online (Sandbox Code Playgroud)
将安装“1.0.1”
我可以通过执行查看最新版本
npm info pkg versions --json (without --json it will cut off when there are many versions)
Run Code Online (Sandbox Code Playgroud)
由于缺乏实际工具,我想这将是一些 grep 工作。
Version是该包的“最新”版本 - 至少发布到 npm 注册表(标记为)1.0.1
latest
来自 的文档cli/dist-tag
。强调我的。
标签可用于提供别名而不是版本号。
例如,一个项目可能选择具有多个开发流,并为每个流使用不同的标签,例如稳定、测试版、开发、金丝雀。
默认情况下,npm 使用latest 标签来标识软件包的当前版本,并且npm install(不带任何@ 或@ 说明符)安装latest 标签。通常,项目仅对稳定版本使用latest标签,对不稳定版本(例如预发布版本)使用其他标签。
默认情况下,除了latest之外,没有任何标签对npm本身有任何特殊意义。
如果您想要beta 版本,请从 GitHub 安装,或明确使用标签。
$ npm install webpack/extract-text-webpack-plugin
Run Code Online (Sandbox Code Playgroud)
通过阅读手册,这一点已经很清楚了。
更清楚的是:
latest
是一个隐式标记,附加到未使用显式标记 ( )发布的包的任何已发布版本--tag
。
安装xyz@latest
只需查找注册表中标记为 的版本即可。latest
就这个包而言,就是release 1.0.1
。就是这样。这里没有什么特别的事情发生。@latest
不拉取发布到的最新版本npm
列为测试版的版本有不同的标记。显然它们都没有被标记为latest
,因此尝试使用@latest
来获取一个是毫无意义的。
从注册表中:
'dist-tags': { latest: '1.0.1', beta: '2.0.0-beta.4' }
Run Code Online (Sandbox Code Playgroud)
再次强调,使用 GitHub 版本作为前沿,或者明确使用版本/标签。
$ npm install extract-text-webpack-plugin@beta
Run Code Online (Sandbox Code Playgroud)
给你,专门为你准备的:
将其压缩为 shell 脚本,然后就可以开始了:
$ npm install extract-text-webpack-plugin@$(recent-version extract-text-webpack-plugin)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12091 次 |
最近记录: |