npm-unpublish

从注册表中移除一个包

选择 CLI 版本

概述

npm unpublish [<package-spec>]

要了解更多关于 npm 注册表如何处理取消发布的信息,请查看我们的 取消发布策略

警告

如果您希望鼓励用户升级,或者您不再想维护某个包,请考虑使用 deprecate 命令。

说明

这会从注册表中移除一个包版本,删除其条目并移除 tarball。

如果您没有登录,npm 注册表将返回错误。

如果您没有指定包名,则要取消发布的包名和版本将从当前目录中的项目中获取。

如果您指定了包名但没有指定版本,或者您删除了包的所有版本,那么注册表将完全删除根包条目。

即使您取消发布了某个包版本,该特定名称和版本组合也永远无法再次使用。为了再次发布该包,您必须使用新的版本号。如果您取消发布了整个包,则在 24 小时过去之前,您不能发布该包的任何新版本。

配置

dry-run

  • 默认值:false
  • 类型:布尔值

表示您不希望 npm 进行任何更改,并且它只应报告它将要执行的操作。这可以传递到任何修改本地安装的命令中,例如 installupdatededupeuninstall,以及 packpublish

注意:这不受其他网络相关命令(例如 dist-tagsowner 等)的限制。

force

  • 默认值:false
  • 类型:布尔值

移除各种针对不利的副作用、常见错误、不必要的性能下降和恶意输入的保护。

  • 允许覆盖全局安装中非 npm 文件。
  • 允许 npm version 命令在未清理的 git 存储库上运行。
  • 允许使用 npm cache clean 删除缓存文件夹。
  • 允许安装 engines 声明要求不同 npm 版本的包。
  • 允许安装 engines 声明要求不同 node 版本的包,即使启用了 --engine-strict
  • 允许 npm audit fix 安装超出您声明的依赖范围的模块(包括 SemVer 主要更改)。
  • 允许取消发布已发布包的所有版本。
  • 允许在根项目中安装冲突的 peerDependencies。
  • npm init 期间隐式设置 --yes
  • 允许覆盖 npm pkg 中的现有值
  • 允许取消发布整个包(不仅仅是单个版本)。

如果您不确定要做什么,强烈建议您不要使用此选项!

workspace

  • 默认值
  • 类型:字符串(可以设置多次)

启用在当前项目的配置工作区上下文中运行命令,同时通过仅运行此配置选项定义的工作区来进行过滤。

workspace 配置的有效值为:

  • 工作区名称
  • 工作区目录的路径
  • 父工作区目录的路径(将导致选择该文件夹中的所有工作区)

当为 npm init 命令设置时,这可以设置为尚未存在的工作区的文件夹,以创建该文件夹并将其设置为项目中的一个全新的工作区。

此值不会导出到子进程的环境中。

workspaces

  • 默认值:null
  • 类型:null 或布尔值

设置为 true 以在**所有**配置工作区的上下文中运行命令。

将此显式设置为 false 会导致像 install 这样的命令完全忽略工作区。当未显式设置时

  • node_modules 树上运行的命令(install、update 等)会将工作区链接到 node_modules 文件夹中。 - 执行其他操作的命令(test、exec、publish 等)将对根项目进行操作,除非 workspace 配置中指定了一个或多个工作区。

此值不会导出到子进程的环境中。

参见