如何从npm注册表中删除npm包?

Kha*_*edP 34 javascript node.js npm

有没有办法从npm注册表中删除或删除整个模块?

注意:npm -f unpublish不允许您取消发布超过24小时的任何内容

Jos*_*eph 26

鉴于最近发生的事件,有一篇关于此的帖子.你最好的选择是联系npm并希望你的软件包不依赖于其他项目.

如果版本超过24小时,则取消发布将失败,并显示消息以联系support@npmjs.com.

如果您联系支持人员,他们将检查删除该版本的软件包是否会破坏任何其他安装.如果是这样,我们不会删除它.您要么必须转移包的所有权,要么与依赖包的所有者联系以更改其依赖关系.

http://blog.npmjs.org/post/141905368000/changes-to-npms-unpublish-policy


cha*_*jsq 20

TL; DR:

npx force-unpublish package-name 'reason message'
Run Code Online (Sandbox Code Playgroud)

说明:

  1. npm deprecate package-name 'reason message'
  2. npm owner add npm package-name
  3. npm owner rm $(npm whoami) package-name

https://www.npmjs.com/package/force-unpublish


rya*_*yan 13

我偶然发现了这个问题,我不得不删除现有的包。以下工作无缝衔接。我注意到该包立即从我的帐户中删除(这是一个没有依赖项的测试包。)

npm --force unpublish "package-name"

如果您在 npm 帐户上配置了 2FA,则可能需要输入 OTP/Auth 密钥。


小智 12

如果发布的包/版本少于 72 小时,除非您是模块的唯一所有者。

npm unpublish <package-name> --force
Run Code Online (Sandbox Code Playgroud)

https://www.npmjs.com/policies/unpublish包含取消发布包的政策的详细信息

自提出问题以来,取消发布包的命令和策略可能已更改。

npm force-unpublish package-name 'reason message'
Run Code Online (Sandbox Code Playgroud)

或者

npm --force unpublish "package-name"
Run Code Online (Sandbox Code Playgroud)

对我不起作用。


Ice*_*erg 5

确保您的包符合取消发布政策

删除一个版本

npm unpublish [<@scope>/]<pkg>@<version>
Run Code Online (Sandbox Code Playgroud)

删除所有版本

npm unpublish [<@scope>/]<pkg> --force
Run Code Online (Sandbox Code Playgroud)

https://docs.npmjs.com/cli/v6/commands/npm-unpublish

该命令在终端执行成功后可能需要一段时间才能生效。