您可以取消发布特定版本,然后重新发布它:
npm unpublish [email protected]
然后重新发布版本。
如果模块托管在您自己的 npm 存储库上,则此方法有效,但对于
registry.npmjs.org
,您将无法在取消发布后重新使用版本号,并且有一个时间限制(72 小时),之后您将无法再使用取消发布。请参阅npm 取消发布政策。
有人在 npm 的 github 问题上这样说:
@nmrony 您不能再覆盖以前发布的包(如果我没记错的话,自 2014 年 2 月起)。
https://github.com/npm/npm/issues/8305#issuecomment-236412989
这可能不可行,但有一个矫枉过正的方法
npm unpublish --force
- 将删除您的整个项目
等待24小时
npm publish
根据npm docs这个未发布的版本不能重新发布,打补丁版本并发布
包一旦取消发布,就无法重新发布。如果您错误地取消发布了一个包,我们建议您以不同的名称再次发布,或者对于未发布的版本,修改版本号并再次发布。
所以:
npm unpublish
npm version patch
npm publish
会做的。
我也遇到了类似的问题。我发布了一个新版本但内容相同的新包。
npm publish --access public (version - 0.1.1)
现在,删除原来的包。
npm unpublish -f [email protected]
等待 24 小时重新发布原始包并删除新包。
npm publish --access public (version - 0.1.0)
npm unpublish -f [email protected]
您的包用户将在 24 小时内找不到原始版本,因此包管理器将显示下拉菜单以选择其他版本,大多数将使用最新版本。