如果您不再希望维护包,或者您希望鼓励用户更新到新的或不同的版本,您可以弃用它。弃用包或版本将在用户安装它时在终端打印一条消息。

弃用警告或消息可以包含任何内容。您可能希望包含一条鼓励用户更新到特定版本或备用支持包的消息。

注意:我们强烈建议您弃用包或包版本,而不是下架它们,因为下架会将包完全从注册表中移除,这意味着任何依赖它的用户将无法再使用它,并且不会有任何警告。

弃用整个包

弃用整个包将从 npm 网站上的搜索结果中移除它,并且在包页面上也将显示弃用消息。

Screenshot of package deprecation

如果您需要弃用一个包,但您的包不符合下架要求,那么弃用包可以作为删除包的替代方案。

使用网站

  1. 在 npm 的“登录”页面上,输入您的帐户详细信息,然后点击 登录. Screenshot of npm login dialog
  2. 导航到您要弃用的包的包页面,将<your-package-name>替换为您包的名称:https://npmjs.net.cn/package/<your-package-name>

  3. 点击设置

    Screenshot showing the settings tab on a package page
  4. 在“弃用包”下,点击弃用包

    Screenshot showing the deprecate package button
  5. 如果您确定要继续,请输入您的包名称,然后点击弃用包

    Screenshot showing the deprecate package confirmation

使用命令行

要弃用整个包,请运行以下命令,将<package-name>替换为您包的名称,并将"<message>"替换为您的弃用消息

npm deprecate <package-name> "<message>"

如果您已启用双重身份验证,请将一次性密码添加到命令中,--otp=123456(其中123456是来自您的身份验证应用程序的代码)。

弃用包的单个版本

当您弃用包的某个版本时,在该版本的包页面上将显示一条红色消息,类似于弃用整个包。

Screenshot of package deprecation for a particular version

使用命令行

要弃用包版本,请运行以下命令,将<package-name>替换为您包的名称,将<version>替换为您的版本号,并将"<message>"替换为您的弃用消息

npm deprecate <package-name>@<version> "<message>"

CLI 也接受<version>的版本范围。

如果您有双重身份验证,请将一次性密码添加到命令中,--otp=123456(其中123456是来自您的身份验证应用程序的代码)。

取消弃用包或版本

要取消弃用包,请将"<message>"替换为""(空字符串)在上述命令之一中。

例如,要取消弃用包版本,请运行以下命令,将<package-name>替换为您包的名称,并将<version>替换为您的版本号

npm deprecate <package-name>@<version> ""

如果您有双重身份验证,请将一次性密码添加到命令中,--otp=123456(其中123456是来自您的身份验证应用程序的代码)。

将弃用的包转移到 npm

如果您不再维护包,但其他用户依赖它,并且您希望从您的用户配置文件中移除它,您可以将它转移到@npm用户帐户,该帐户由 npm 注册表拥有。

注意:将包转移到 npm 帐户后,您将无法再更新它。

要将包转移到 npm 用户帐户,请按顺序运行以下两个命令,将<user>替换为您的 npm 用户名,将<package-name>替换为您要转移的包

npm owner add npm <package-name>
npm owner rm <user> <package-name>

如果您有双重身份验证,请将一次性密码添加到命令中,--otp=123456(其中123456是来自您的身份验证应用程序的代码)。