如何安装npm软件包的最新版本
如何安装npm软件包的最新版本? '@latest'肯定不会获取最新的 - 我认为这意味着最新的稳定或什么。如何安装npm软件包的最新版本
我已经使用了一段时间一劈,因为我似乎无法找到任何这信息:
npm i [email protected]
的“X”导致它失败并转储所有可能的版本,我然后复制粘贴正确的一个而不是'X'。有点可笑。
我试过像'最新版'的第三方软件包,但它们都未能获得最新版本。
似乎没有这样做的官员。例如,在编写最新版本时,extract-text-webpack-plugin是2.0.0-beta.4。但是这样做的:
npm i [email protected]
将安装“1.0.1”
我可以通过做
npm info pkg versions --json (without --json it will cut off when there are many versions)
由于缺乏实际的工具,我猜的看到它的最新版本将是一些的grep工作。
版本1.0.1
是该软件包中的“最新”版本 - 发布到NPM注册表至少(tagged为latest
)
来自cli/dist-tag
的文档。强调我的。
标签可用于提供别名而不是版本号。例如,一个项目可能会选择有多个开发流,并为每个流使用不同的标签,例如stable,beta,dev,canary。
默认情况下,npm使用最新的标记来标识包的当前版本,npm install(没有任何@或@说明符)会安装最新的标记。 通常情况下,项目仅将稳定版本的最新标签使用,并将其他标签用于不稳定版本,例如预发布。
默认情况下,除最新版本外,没有标签对npm本身有任何特殊意义。
如果你想要beta releases,那么从GitHub安装,或明确使用标签。
latest
是隐含标签,贴到包裹的任何发行版,这是不与出版:
$ npm install webpack/extract-text-webpack-plugin
更明确提出非常明确显式标签(--tag
)。
安装[email protected]
只是在注册表中查找发行版标记为为latest
。在这个包的情况下,这是版本1.0.1
。 就是这样。这里没有什么特别的。 @latest
不会将最新版本发布到npm
作为beta版列出的版本被标记为不同。很明显,他们都没有被标记为latest
,所以试图使用@latest
得到一个是毫无意义的。
从注册表:
'dist-tags': { latest: '1.0.1', beta: '2.0.0-beta.4' }
再次使用GitHub上发布的最前沿,或明确使用版本/标签。
$ npm install [email protected]
在这里你去,你特别提出:
凝结到这个shell脚本,你是好去:
$ npm install [email protected]$(recent-version extract-text-webpack-plugin)
除了通过npm提供的最新版本是'2.0.0-beta.4',可以通过隐式指定该版本来安装。正如你可以看到@latest不会获取该版本。 npm将列出'2.0.0-beta.4'的事实清楚地表明它意识到版本。我觉得它让它变得更加困难。 – cyberwombat
尽管我最后的评论被删除,但我要重申:您需要更仔细地阅读手册。我觉得像一个破记录试图向你解释这一点。被标记为“最新”并不意味着它是最近发布的版本。 – Oka
最后一个shell脚本就是我正在寻找的。谢谢。 – cyberwombat
使用npm update
只要你安装了软件包:
npm update <package>
嗯..不是。首先问题是关于安装,其次'更新'有完全相同的问题。它不会更新到最新版本。不过谢谢。 – cyberwombat
@Yashua请给出您的确切错误。 – baranskistad
没有错误。询问我是否忽略了文档中的某些内容。据我所知,这似乎不可能。 – cyberwombat
为什么在这个世界上这会被低估。如何回答一个非常明确的问题?即将离开这个受拖累的网站。 – cyberwombat