有没有最好的方法来发布 npm 包的先前主要版本而不为其添加标签?我们当前的主要版本是 3.x (v3),因此我们npm publish会自动为该版本赋予标签latest。当我们发布2.x版本 (v2) 的更新时,我们必须给它一个标签,这样它就不会自动latest从 v3 中获取标签。
我们可以做类似的事情previous,尽管它的含义是主观的。事实上,我们根本不需要v2 的标签。如果人们想安装 v2,Semver 效果很好。有没有比使用标签发布并添加postpublish删除标签的脚本更好的解决方案来不添加不必要的标签?(我写的时候听起来很可笑)
小智 8
看看2015 年的这条评论,“按照设计,每个发布都必须与 dist-tag 相关联。” 不幸的是,我没有看到在libnpmpublish和npm当前代码中绕过标签的方法。
因此,我认为您已经有了最好的选择:在另一个标签下发布,无论该标签是否是临时的。
不过,如果我可以提个建议的话……
previous您可以考虑在名为 的标签下发布以前的版本,而不是主观标签v2。我注意到Angular 团队在 LTS 版本中使用了这种模式,例如:
虽然我认为这对消费者来说用处不大,因为他们可以代替npm install @angular/core@11,npm install @angular/core@v11-lts但它可能是一种更干净的发布方法。
| 归档时间: |
|
| 查看次数: |
2311 次 |
| 最近记录: |