Skip to content
📈0️⃣

nrm

NRM(即 npm registry manager)是一个用于管理 Node.js 版本和注册表切换的工具,它提高了开发效率并解决包管理和版本兼容性问题。以下是关于 nrm 的详细介绍:

优势

  1. 版本管理:在 Node.js 生态系统中,不同项目可能需要不同版本的 Node.js。nrm 允许开发者在不同项目间轻松切换 Node.js 版本,确保项目在所需环境中正常运行。
  2. 注册表(registry)切换:开发者有时希望使用不同的 registry 来加速包的安装和更新。nrm 支持在不同的 registry 之间快速切换,例如官方的 npm registry 或淘宝的 npm registry。
  3. 提升下载速度:由于默认的 npm 仓库可能在国外,国内用户访问时下载速度可能较慢。nrm 可以帮助用户快速切换到国内的镜像源,如淘宝的 npm 镜像,从而提升下载速度。
  4. 使用简便:相比于手动修改 npm 的配置来切换镜像源,nrm 提供了更为便捷的方式。用户只需通过简单的命令即可完成源的切换,无需记忆复杂的命令或手动编辑配置文件。

使用

要开始使用 nrm,首先需要安装它。可以通过官方提供的安装脚本进行安装。安装完成后,可以使用nrm ls命令来查看可用的 registry 列表,使用nrm use命令来切换到指定的 registry,以及使用nrm add命令来添加新的 registry。

1、全局安装 nrm 包

sh
npm install -g nrm

2、查看 nrm 的包源

sh
nrm ls # 查看当前npm的包源

3、切换 npm 包源

sh
nrm use cnpm # 切换npm的包源

示例:

PS D:\www.zichin.com\blog> nrm ls
* npm ---------- https://registry.npmjs.org/
  yarn --------- https://registry.yarnpkg.com/
  tencent ------ https://mirrors.cloud.tencent.com/npm/
  cnpm --------- https://r.cnpmjs.org/
  taobao ------- https://registry.npmmirror.com/
  npmMirror ---- https://skimdb.npmjs.com/registry/

4、增加 npm 包源

sh
nrm add npmName http://registry.npm.frp.trmap.cn/

5、删除 npm 包源

sh
nrm del npmName # 删除名为npmName的包

6、源连接速度测试

sh
nrm test npm

示例:

PS D:\www.zichin.com\blog> nrm use npm
 SUCCESS  The registry has been changed to 'npm'.
PS D:\www.zichin.com\blog> nrm test npm
* npm ---- 682 ms
PS D:\www.zichin.com\blog> nrm use taobao
 SUCCESS  The registry has been changed to 'taobao'.
PS D:\www.zichin.com\blog> nrm test npm
  npm ---- 687 ms

总的来说,nrm 是一个非常实用的工具,特别适合需要在不同环境或地区工作的开发者。如果你是前端开发者或 Node.js 用户,使用 nrm 可以大大简化你的工作流程,提高开发效率。