npm包发布

一、npm

npm(Node Package Manager)是 Node.js 的包管理工具,用于安装、分享和管理 JavaScript 包和项目依赖。npm 是 Node.js 的默认包管理器,随同 Node.js 一起安装。

二、npm主要功能特点

  1. 包管理:npm 允许开发者轻松地安装、更新和删除 JavaScript 包。开发者可以通过 npm 安装他人编写的包,也可以将自己的包发布到 npm 上供他人使用。
  2. npm 能够管理项目的依赖关系,帮助开发者在项目中引入所需的第三方库和工具,并自动解决依赖冲突。
  3. 脚本执行:npm 允许开发者在 package.json 文件中定义各种自定义脚本,比如构建、测试等,通过简单的命令来执行这些脚本。
  4. 版本管理:npm 使用语义化版本控制(Semantic Versioning)来管理包的版本号,开发者可以指定所需的包版本范围,确保项目的稳定性和兼容性。
  5. 作用域和私有包:npm 支持作用域(Scope)概念,允许开发者将包发布到私有作用域,以便在内部项目中共享私有包。
  6. 全球化:npm 是一个全球化的包管理工具,开发者可以访问全球范围内的数以百万计的开源包,并从中选择适合自己项目需求的包。

三、npm 私有包发布

Verdaccio 是一个开源的 npm 私有 registry 代理,通过 Verdaccio,可以管理自己的私有 npm 包,以及代理和缓存公共 npm registry 中的包。

使用 Verdaccio 搭建私有 npm registry 的步骤:

1. 安装 Verdaccio

在命令行中使用 npm 全局安装 Verdaccio:

npm install -g verdaccio

2. 启动 Verdaccio

执行启动命令:

verdaccio

默认情况下,Verdaccio 会运行在 http://localhost:4873。可以在浏览器中访问该地址来查看 Verdaccio 的 Web 界面。

3. 配置 npm

将 npm 的 registry 配置指向 Verdaccio,以便在发布和安装包时使用私有 registry

使用以下命令来配置 npm registry:

npm config set registry http://localhost:4873

4. 发布和安装私有包

发布私有包到 Verdaccio:

npm publish

安装包:

npm install 或 yarn add

5.管理用户和权限

Verdaccio 允许设置用户账号和权限,以控制谁可以访问和发布包。也可以在 Verdaccio 的 Web 界面或配置文件中进行用户和权限的管理。

四、npm 公共包发布

要将 npm 包发布到公共的 npm registry 中,你需要遵循以下步骤:

1. 创建 npm 账号

需要在 npm 官网上注册一个账号。

2.登录 npm 账号

在命令行中使用以下命令登录 npm 账号:

npm login

输入 npm 上注册的用户名、密码和邮箱来登录。

3.准备你的包

在项目中,确保你的包已经准备好可以发布。包括正确配置的 package.json 文件和所有需要的文件。

4.发布包

运行以下命令发布包到公共的 npm registry:

npm publish

5.版本号管理

在每次发布包时,确保更新包的版本号,遵循语义化版本规范(Semantic Versioning)。

6.管理包的访问权限

如果你想限制包的访问权限,可以在 npm 上设置包的访问权限,例如私有包或公共包。

7.更新文档和元数据

在发布包之前,确保你的包的文档和元数据是准确的,以便其他人可以正确使用和理解你的包。

8.验证发布

发布后,可以使用 npm info your-package-name 命令来验证包是否已经成功发布到公共的 npm registry。

五、常用命令

  1. 检查当前的 registry 配置:

    npm config get registry
    
  2. 设置 registry 配置:

    npm config set registry https://registry.npmjs.org
    
  3. 创建用户:

    npm adduser
    
  4. 登录:

    npm login
    
  5. 删除 registry 特定包或版本:

    npm unpublish my-package
    
    npm unpublish my-package@1.0.0
    

    强制删除:

    npm unpublish my-package  --force
    

六、说明

  1. 当 npm 和 yarn 配置了不同的 registry 时,在使用 yarn add 安装包时发现会从 npm registry 配置获取。这是因为 yarn 在安装包时会优先使用 npm 的配置而不是自身的配置

  2. 如何在项目中使用特定的 registry 配置而不是全局配置:
    可以在项目的根目录下创建一个.npmrc或.yarnrc文件,并在其中指定项目特定的 registry 地址。

    在.npmrc文件中,可以添加如下内容:

    registry=https://your-custom-registry-url
    

    在.yarnrc文件中,可以添加如下内容:

    registry "https://your-custom-registry-url"
    

相关推荐

  1. 如何发布npm

    2024-03-30 06:56:05       32 阅读
  2. 如何发布NPM

    2024-03-30 06:56:05       28 阅读
  3. npm发布

    2024-03-30 06:56:05       20 阅读
  4. 发布自己的npm

    2024-03-30 06:56:05       12 阅读
  5. npm发布 npm publish

    2024-03-30 06:56:05       8 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-30 06:56:05       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-30 06:56:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-30 06:56:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-30 06:56:05       18 阅读

热门阅读

  1. Node.js常用命令详解

    2024-03-30 06:56:05       15 阅读
  2. 在axios中设置方法防止http重复请求

    2024-03-30 06:56:05       17 阅读
  3. SqlSugar快速入门

    2024-03-30 06:56:05       16 阅读
  4. qt之windows库编译

    2024-03-30 06:56:05       20 阅读
  5. MYSQL分区

    2024-03-30 06:56:05       16 阅读
  6. 关于debian如何使用lb-build构建iso

    2024-03-30 06:56:05       18 阅读
  7. 开源 | 星星充电、特来电和云快充如何赚钱?

    2024-03-30 06:56:05       47 阅读
  8. 常用的SQL术语和概念

    2024-03-30 06:56:05       18 阅读
  9. 简单工厂模式

    2024-03-30 06:56:05       15 阅读