26

现在npm publish -f已弃用,是否有解决方法或软件包可以在目标版本发布后 覆盖它?

我知道semver;我还想要npm publish -f

4

4 回答 4

23

有人在 npm 的 github 问题上这样说:

@nmrony 您不能再覆盖以前发布的软件包(如果我没记错的话,自 2014 年 2 月以来)。

https://github.com/npm/npm/issues/8305#issuecomment-236412989

于 2016-07-31T06:04:45.357 回答
16

您可以取消发布特定版本,然后重新发布它:

npm unpublish myModule@1.2.3

然后重新发布版本。

如果模块托管在您自己的 npm 存储库上,这将无限期地工作,但根据这个,如果托管在registry.npmjs.org.

于 2019-11-11T17:29:29.950 回答
6

这可能不可行,但有一种矫枉过正的方法

npm unpublish --force- 将删除您的整个项目

等待 24 小时

npm publish

于 2019-10-19T14:40:53.443 回答
5

根据npm docs,这个未发布的版本不能重新发布,bump一个补丁版本并发布

一旦一个包被取消发布,它就不能被重新发布。如果您错误地取消发布了一个包,我们建议您以不同的名称再次发布,或者对于未发布的版本,修改版本号并再次发布。

所以:

npm unpublish
npm version patch
npm publish

将完成这项工作。

于 2020-07-26T21:00:25.167 回答