npm更新和管理已发布的包

目录

1、更改包的可见性

[1.1 将公共包设为私有](#1.1 将公共包设为私有)

​编辑

使用网站

使用命令行

[1.2 将私有包公开](#1.2 将私有包公开)

使用网站

使用命令行

2、将协作者添加到用户帐户拥有的私有包

[2.1 授予对Web上私有用户包的访问权限](#2.1 授予对Web上私有用户包的访问权限)

[2.2 从命令行界面授予私有包访问权限](#2.2 从命令行界面授予私有包访问权限)

[2.3 授予对私有组织包的访问权限](#2.3 授予对私有组织包的访问权限)

3、更新已发布的软件包版本号

4、不推荐和不推荐包或包版本

[4.1 弃用整个包](#4.1 弃用整个包)

使用网站操作

使用命令行

[4.2 弃用软件包的单个版本](#4.2 弃用软件包的单个版本)

使用命令行

[4.3 取消对包或版本的推荐使用](#4.3 取消对包或版本的推荐使用)

[4.4 将已弃用的包转移到npm](#4.4 将已弃用的包转移到npm)

5、从注册表取消发布包

[5.1 取消发布包](#5.1 取消发布包)

使用网站

使用命令行

[5.2 取消发布包的单个版本](#5.2 取消发布包的单个版本)

使用命令行

[5.3 何时取消发布](#5.3 何时取消发布)


1、更改包的可见性

您可以从网站或命令行更改作用域包的可见性。

您必须是拥有包的用户帐户或组织的所有者,才能更改包的可见性。

1.1 将公共包设为私有

如果要限制对您拥有的公共包的访问和可见性,可以将该包设为私有。当您将包设为私有时,其访问权限将立即更新,并将在更改后的几分钟内从网站上删除。

注意:将包设为私有需要付费用户帐户或组织。要注册付费用户或组织

意味着升级为付费用户,需要支付7 美元/月才能 发布私有包,并添加协作者。

使用网站

  1. npm网站上,转到包页面。
  2. 在包页面上,单击设置。
  3. 在"包访问"下,选择"包是私有的吗?"
  4. 单击"更新程序包设置"。

使用命令行

要在命令行上将一个公共包设为私有,请运行以下命令,将<package-name>替换为您的包的名称:

bash 复制代码
npm access restricted <package-name>

1.2 将私有包公开

注意事项: 当你将私有包公开时,这个包将对所有npm用户可见并可下载。

使用网站

  1. npm网站上,转到包页面。
  2. 在包页面上,单击设置。
  3. 在"包访问"下,取消选择"包是私有的吗?"
  4. 单击"更新程序包设置"。

使用命令行

要在命令行上将一个公共包设为私有,请运行以下命令,将<package-name>替换为您的包的名称:

bash 复制代码
npm access public <package-name>

2、将协作者添加到用户帐户拥有的私有包

作为拥有付费用户帐户的npm用户,您可以在您拥有的私有包上添加另一个拥有付费帐户的npm用户作为协作者。

注意:您要添加为私有包上的协作者的用户必须具有付费用户帐户。

2.1 授予对Web上私有用户包的访问权限

  1. npm网站上,转到您想要添加协作者的包:https://www.npmjs.com/package/<your-package-name>
  2. 在软件包页面的"Collaborators"下,单击+。
  3. 输入协作者的npm用户名。
  4. 单击提交。

2.2 从命令行界面授予私有包访问权限

要在命令行上将协作者添加到包中,请运行以下命令,将<user>替换为协作者的npm用户名,将<your-package-name>替换为私有包的名称:

bash 复制代码
npm owner add <user> <your-package-name>

2.3 授予对私有组织包的访问权限

要授予npm用户对私有组织包的访问权限,您必须让组织所有者将它们添加到您的组织,然后将它们添加到有权访问私有包的团队。

3、更新已发布的软件包版本号

当您对已发布的包进行重大更改时,我们建议您更新版本号,以便将更改的范围传达给依赖您代码的其他人。

注意:如果你已经将git仓库链接到了一个包,更新包版本号也会将一个带有更新版本号的标签添加到链接的git仓库中。

1、要更改package.json中的版本号,请在命令行上的软件包根目录中运行以下命令,将<update_type>替换为语义版本控制语义版本控制语义版本控制发布类型之一(补丁、主要或次要):

bash 复制代码
npm version <update_type>

或者直接修改package.json中的version字段。

2、运行 npm publish 命令。

3、转到您的软件包页面(https://npmjs.com/package/<package>)以检查软件包版本是否已更新。

4、不推荐和不推荐包或包版本

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

一个弃用警告或消息可以说明任何事情。您可能希望包含一条消息,鼓励用户更新到特定版本或其他受支持的软件包。

注意:我们强烈建议弃用软件包或软件包版本,而不是取消发布取消发布取消发布它们,因为取消发布会从注册表中完全删除软件包,这意味着依赖它的任何人都将无法再使用它,并且不会发出警告。

4.1 弃用整个包

弃用整个软件包将从 npm网站,并且弃用消息也将显示在 包装页。

使用网站操作

1、登录npm账户。

2、右上角点击头像,下拉选择package,选择对应的package,对应的地址为:jiang-isarray - npm (npmjs.com)https://www.npmjs.com/package/jiang-isarray

3、点击"settings"标签页面,下拉到最底部。

4、单击"Deprecate package" 按钮。

5、如果继续删除,输入包名称,单击"Deprecat package"进行弃用提交,接口会根据包名称进行校验。

使用命令行

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

bash 复制代码
npm deprecate <package-name> "<message>"

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

4.2 弃用软件包的单个版本

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

使用命令行

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

bash 复制代码
npm deprecate <package-name>@<version> "<message>"

4.3 取消对包或版本的推荐使用

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

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

bash 复制代码
npm deprecate <package-name>@<version> ""

4.4 将已弃用的包转移到npm

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

**注意:**将包传输到 npm 帐户后,您将无法再更新它。

若要将包传输到 npm 用户帐户,请按顺序运行以下两个命令,替换为 npm 用户名和要传输的包:<user>``<package-name>

BorderBox-oreju5-0 复制代码
<span style="color:#393a34"><span style="background-color:#f6f8fa">
</span></span>
bash 复制代码
npm owner add npm <package-name>
npm owner rm <user> <package-name>

5、从注册表取消发布包

作为包所有者或协作者,如果你的包没有依赖项,你可以使用CLI将它从npm注册表中永久删除。您可以在初始发布后72小时内取消发布;超过72小时,如果您的软件包符合某些条件,您仍然可以取消发布。

设置这些标准是为了避免破坏JavaScript包生态系统。 如果您无法取消发布您的软件包,则可以将其弃用。

注意:从包中删除所有协作者或团队将不会取消发布该包

5.1 取消发布包

如果要从注册表中完全删除包的所有版本,可以完全取消发布。 这将从注册表中删除它,它将无法安装。

要取消发布包,必须满足包取消发布规则的要求。

使用网站

1、登录npm账户。

2、右上角点击头像,下拉选择package,选择对应的package,对应的地址为:jiang-isarray - npm (npmjs.com)https://www.npmjs.com/package/jiang-isarray

3、点击"settings"标签页面,下拉到最底部。

4、单击"delete package"按钮

5、如果确定要继续,请输入软件包名称,然后单击删除软件包。

使用命令行

要取消发布整个软件包,请运行以下命令,将<package-name>替换为软件包的名称:

bash 复制代码
npm unpublish <package-name> -f

5.2 取消发布包的单个版本

如果要删除包的单个版本,可以取消发布一个版本,而不影响其他版本。 这将只从注册表中删除该版本,并且无法安装该版本。此选项仅可通过npm CLI使用。

使用命令行

要取消发布软件包的单个版本,请运行以下命令,将<package-name>替换为您的软件包名称,将<version>替换为您的版本号:

bash 复制代码
npm unpublish <package-name>@<version>

5.3 何时取消发布

取消发布软件包将从注册表中永久删除该软件包,因此其他用户无法再安装该软件包。一旦软件包被取消发布,以相同名称重新发布将被阻止24小时。如果您错误地取消发布了一个软件包,我们建议您使用其他名称重新发布,或者对于未发布的版本,更改版本号并重新发布。

相关推荐
吃杠碰小鸡28 分钟前
lodash常用函数
前端·javascript
丰云36 分钟前
一个简单封装的的nodejs缓存对象
缓存·node.js
emoji11111138 分钟前
前端对页面数据进行缓存
开发语言·前端·javascript
泰伦闲鱼41 分钟前
nestjs:GET REQUEST 缓存问题
服务器·前端·缓存·node.js·nestjs
m0_748250031 小时前
Web 第一次作业 初探html 使用VSCode工具开发
前端·html
一个处女座的程序猿O(∩_∩)O1 小时前
vue3 如何使用 mounted
前端·javascript·vue.js
m0_748235951 小时前
web复习(三)
前端
AiFlutter1 小时前
Flutter-底部分享弹窗(showModalBottomSheet)
java·前端·flutter
麦兜*1 小时前
轮播图带详情插件、uniApp插件
前端·javascript·uni-app·vue
陈大爷(有低保)1 小时前
uniapp小案例---趣味打字坤
前端·javascript·vue.js