npm更新和管理已发布的包

news2024/9/21 23:32:58

目录

1、更改包的可见性

1.1 将公共包设为私有

​编辑

使用网站

使用命令行

1.2 将私有包公开

 使用网站

使用命令行

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

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

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

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

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

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

4.1 弃用整个包

 使用网站操作

使用命令行

4.2 弃用软件包的单个版本

 使用命令行

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

4.4 将已弃用的包转移到npm

5、从注册表取消发布包

 5.1 取消发布包

使用网站

使用命令行

5.2 取消发布包的单个版本

使用命令行

5.3 何时取消发布 


1、更改包的可见性

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

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

1.1 将公共包设为私有

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

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

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

使用网站

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

使用命令行

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

npm access restricted <package-name>

1.2 将私有包公开

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

 使用网站

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

使用命令行

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

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>替换为私有包的名称:

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

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

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

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

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

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

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

npm version <update_type>

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

2、运行 npm publish 命令。

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

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

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

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

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

4.1 弃用整个包

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

Screenshot of package deprecation

 使用网站操作

1、登录npm账户。

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

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

 4、单击“Deprecate package” 按钮。

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

使用命令行

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

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

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

4.2 弃用软件包的单个版本

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

Screenshot of package deprecation for a particular version

 使用命令行

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

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

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

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

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

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

4.4 将已弃用的包转移到npm

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

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

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

<span style="color:#393a34"><span style="background-color:#f6f8fa">
</span></span>
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)icon-default.png?t=N6B9https://www.npmjs.com/package/jiang-isarray

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

4、单击“delete package”按钮

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

使用命令行

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

npm unpublish <package-name> -f

5.2 取消发布包的单个版本

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

使用命令行

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

npm unpublish <package-name>@<version>

5.3 何时取消发布 

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/819185.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

InfiniBand,到底是个啥?

对于InfiniBand&#xff0c;很多搞数通的同学肯定不会陌生。 进入21世纪以来&#xff0c;随着云计算、大数据的不断普及&#xff0c;数据中心获得了高速发展。而InfiniBand&#xff0c;就是数据中心里的一项关键技术&#xff0c;地位极为重要。 尤其是今年以来&#xff0c;以Ch…

春秋云镜 CVE-2021-32682

春秋云镜 CVE-2021-32682 elFinder RCE 靶标介绍 elFinder是一套基于Drupal平台的、开源的AJAX文件管理器。该产品提供多文件上传、图像缩放等功能;elFinder 存在安全漏洞&#xff0c;攻击者可利用该漏洞在托管elFinder PHP连接器的服务器上执行任意代码和命令。 启动场景 漏…

金蝶管易云 X Hologres:新一代全渠道电商ERP最佳实践

业务简介 金蝶管易云是金蝶集团旗下专注提供电商企业管理软件服务的子公司&#xff0c;成立于2008年&#xff0c;是国内最早的电商ERP服务商之一&#xff0c;目前已与300主流电商平台建有合作关系&#xff0c;以企业数据为驱动&#xff0c;深度融合线上线下数据&#xff0c;为…

pytorch学习——正则化技术——丢弃法(dropout)

一、概念介绍 在多层感知机&#xff08;MLP&#xff09;中&#xff0c;丢弃法&#xff08;Dropout&#xff09;是一种常用的正则化技术&#xff0c;旨在防止过拟合。&#xff08;效果一般比前面的权重衰退好&#xff09; 在丢弃法中&#xff0c;随机选择一部分神经元并将其输出…

HCIP中期实验

1、该拓扑为公司网络&#xff0c;其中包括公司总部、公司分部以及公司骨干网&#xff0c;不包含运营商公网部分。 2、设备名称均使用拓扑上名称改名&#xff0c;并且区分大小写。 3、整张拓扑均使用私网地址进行配置。 4、整张网络中&#xff0c;运行OSPF协议或者BGP协议的设备…

Hadoop 之 Hive 4.0.0-alpha-2 搭建(八)

Hadoop 之 Hive 搭建与使用 一.Hive 简介二.Hive 搭建1.下载2.安装1.解压并配置 HIVE2.修改 hive-site.xml3.修改 hadoop 的 core-site.xml4.启动 三.Hive 测试 一.Hive 简介 Hive 是基于 Hadoop 的数据仓库工具&#xff0c;可以提供类 SQL 查询能力 二.Hive 搭建 1.下载 H…

linux 安装FTP

检查是否已经安装 $] rpm -qa |grep vsftpd vsftpd-3.0.2-29.el7_9.x86_64出现 vsftpd 信息表示已经安装&#xff0c;无需再次安装 yum安装 $] yum -y install vsftpd此命令需要root执行或有sudo权限的账号执行 /etc/vsftpd 目录 ftpusers # 禁用账号列表 user_list # 账号列…

【Ajax】笔记-设置CORS响应头实现跨域

CORS CORS CORS是什么&#xff1f; CORS(Cross-Origin Resource Sharing),跨域资源共享。CORS是官方的跨域解决方案&#xff0c;它的特点是不需要在客户端做任何特殊的操作&#xff0c;完全在服务器中进行处理&#xff0c;支持get和post请求。跨域资源共享标准新增了一组HTTP首…

VSCode格式化shell脚本

安装格式化插件&#xff1a;shell-format 用VSCode打开shell脚本之后&#xff0c;按格式化快捷键CtrlAltF&#xff0c;会提示没有格式化shell的工具&#xff0c;然后安装插件&#xff0c;我装的是这个插件&#xff1a;shell-format。 介绍&#xff1a;https://marketplace.vis…

2.C语言数据类型

常量与变量 1.**常量&#xff1a;**程序运行中&#xff0c;值不改变的量 变量&#xff1a;int num5&#xff1b;值可以变的量 2 C语言三种简单数据类型&#xff1a;整型&#xff0c;实型&#xff0c;字符型 %c %d %ld %s %f整型-进制的转换 **1.十进制&#xff1a;**默认的进…

SpringBoot使用JKS或PKCS12证书实现https

SpringBoot使用JKS或PKCS12证书实现https 生成JKS类型的证书 可以利用jdk自带的keytool工具来生成证书文件&#xff0c; 默认生成的是JKS证书 cmd命令如下: 执行如下命令&#xff0c;并按提示填写证书内容&#xff0c;最后会生成server.keystore文件 keytool -genkey tomcat…

ChatGPT在商业世界中的创新应用:颠覆传统营销与客户关系管理

&#x1f337;&#x1f341; 博主 libin9iOak带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——libin9iOak的博客&#x1f390; &#x1f433; 《面试题大全》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33…

14、容器初始化器和配置环境后处理器

容器初始化器和配置环境后处理器 容器初始化器 与传统Spring的容器后处理器&#xff08;也可对容器做一些定制&#xff09;对比&#xff0c;此处的容器初始化器的执行时机要更早一些。 容器初始化器负责可对Spring容器执行初始化定制。 就是在启动项目的时候&#xff0c;在容…

eclipse版本与jdk版本对应关系

官网&#xff1a;Eclipse/Installation - Eclipsepedia eclipse历史版本&#xff08;2007-&#xff09;&#xff1a;Older Versions Of Eclipse - Eclipsepedia Eclipse Packaging Project (EPP) Releases | Eclipse Packages

springboot疾病查询网站【纯干货分享,免费领源码01548】

spring boot疾病查询网站 摘 要 随着互联网时代的到来&#xff0c;同时计算机网络技术高速发展&#xff0c;网络管理运用也变得越来越广泛。因此&#xff0c;建立一个B/S结构的疾病查询网站&#xff0c;会使疾病查询工作系统化、规范化&#xff0c;也会提高医院形象&#xff0c…

红外雨量计(光学雨量传感器)检测降雨量,预防内涝

红外雨量计&#xff08;光学雨量传感器&#xff09;检测降雨量&#xff0c;预防内涝 随着城市化进程的加快&#xff0c;城市内涝成为一个愈发严峻的问题。短时间内大量的降雨&#xff0c;不仅会给城市交通带来困难&#xff0c;也会对城市的基础设施和居民的生活造成很大的影响…

ESP32cam系列教程003:ESP32cam实现远程 HTTP_OTA 自动升级

文章目录 1.什么是 OTA2. ESP32cam HTTP_OTA 本地准备2.1 HTTP OTA 升级原理2.2 开发板本地基准程序&#xff08;程序版本&#xff1a;1_0_0&#xff09;2.3 开发板升级程序&#xff08;程序版本&#xff1a;1_0_1&#xff09;2.4 本地 HTTP_OTA 升级测试2.4.1 本地运行一个 HT…

Spring系列二:基于注解配置bean

文章目录 &#x1f497;通过注解配置bean&#x1f35d;基本介绍&#x1f35d;快速入门&#x1f35d;注意事项和细节 &#x1f497;自己实现Spring注解配置Bean机制&#x1f35d;需求说明&#x1f35d;思路分析&#x1f35d;注意事项和细节 &#x1f497;自动装配 Autowired&…

谷粒商城第八天-商品服务之品牌管理的整体实现(直接使用逆向生成的代码;含oss文件上传)

目录 一、总述 二、前端部分 2.1 创建好品牌管理菜单 2.2 复制组件 ​编辑2.3 复制api ​​​编辑 2.4 查看效果 ​编辑2.5 需要优化的地方 2.6 具体优化实现 2.6.1 优化一&#xff1a;将表格的状态列&#xff08;这里是是否显示列&#xff09;修改为开关&#xff…

Day15-作业(Maven高级)

作业1&#xff1a;完成苍穹外卖项目目录结构创建 说明&#xff1a; 1.sky-take-out 是父工程 2.sky-common/sky-pojo/sky-server 是子工程 3.sky-server模块引用了sky-common/sky-pojo模块 作业2&#xff1a;完成汇客CRM项目目录结构创建 说明&#xff1a; huike-paren…