有一个包,它的最新版本是2.1.3,预发布版本是3.0.0-rc.7。当我运行npm install package -g时,会安装2.1.3。当我运行npm update -g时,它会更新到预发布版本(我之前安装了它,但后来删除了)。npm是否保持最新的预发布记录?
$ package -v
2.1.3
$ sudo npm update -g package
$ package -v
3.0.0-rc.7
$ sudo npm remove package -g
$ sudo npm install package -g
$ package -v
2.1.3包注册表提供了"latest":"2.1.3"和"pre":"3.0.0-rc.7"。我使用的是npm 1.4.13和node 0.10.28。
发布于 2016-06-20 22:45:55
是的,npm存储库可以保留多个不同的dist-tag,在发布和安装时latest是默认设置。请参阅npm dist-tag文档。
预发布标识符的semver概念和非默认dist-tag的npm概念是不同的,但如果包作者选择npm publish任何预发布版本,那么将它们一起使用可能是最佳实践。例如,当发布一个发布候选版本时,用next标记它可能是合适的。有关更复杂的示例,请参阅此命令的输出:
C:> npm dist-tag ls npm
3.x-latest: 3.9.6
3.x-next: 3.10.1
latest-1: 1.4.29
latest-2: 2.15.6
latest: 3.9.6
lts: 2.15.6
next-2: 2.15.8
next: 3.10.1
v3.x-latest: 3.9.6
v3.x-next: 3.10.1https://stackoverflow.com/questions/23958980
复制相似问题