为什么要使用nrm
我们知道可以使用npm来管理node包,方便我们来操作管理包的版本和信息。
可是由于国内网络原因,直接使用npm官网镜像下载安装node包,比较耗时间,有时还不成功,所以一般会将镜像切换为国内镜像,比如淘宝镜像。
但是,有时候淘宝镜像安装的时候,会有些问题,
还有一个原因是:有时候,可能需要随时切换不同的源来下载包。比如切换官网的、切换淘宝的、切换公司私有的。
那么就出现了一个工具:nrm
nrm的作用: 可以帮助你,简单快速的切换不同npm镜像源。例如:npm、cnpm、taobao等
安装
全局安装nrm
npm install -g nrm
命令解析
安装完成之后,先查看命令帮助
npm help
会列出一系列命令:
nrm ls
: 列出本机所有镜像源(nrm带的+自定义设置的)。
$ nrm ls
npm -------- https://registry.npmjs.org/
yarn ------- https://registry.yarnpkg.com/
cnpm ------- http://r.cnpmjs.org/
* taobao ----- https://registry.npm.taobao.org/
nj --------- https://registry.nodejitsu.com/
npmMirror -- https://skimdb.npmjs.com/registry/
edunpm ----- http://registry.enpmjs.org/
nrm current
: 显示当前使用的镜像源名称。nrm use <registry>
: 设置使用某个镜像源。nrm add <registry> <url> [home]
: 增加一个自定义镜像源。registry
表示该源的缩写,url
表示该源的地址,home
表示该源的主页,可以不设定。例如:nrm add n https://r.cnpmjs.org https://r.cnpmjs.org
,成功会有提示:add registry n success
。nrm set-auth [options] <registry> [value]
: 使用base64编码的字符串或用户名和密码设置自定义镜像源的授权信息。nrm set-email <registry> <value>
: 设置自定义镜像源的邮箱。nrm set-hosted-repo <registry> <value>
: 为自定义镜像源设置托管的NPM存储库用来发布包。nrm del <registry>
: 删除一个自定义镜像源,不能删除nrm自带的。删除成功,会有提示delete registry n success
。nrm home <registry> [browser]
: 使用选择的浏览器打开镜像源主页。如果不设置浏览器,会自动使用默认浏览器打开。如果自定义镜像源没有设置home主页,也打不开。nrm home cnpm
nrm publish [options] [<tarball>|<folder>]
: 如果当前镜像源是自定义镜像源,则将包发布到当前镜像源。
如果您没有使用自定义镜像源,则此命令将直接运行npm publish
。nrm test [registry]
: 显示特定或所有镜像源的响应时间,可以用来检测使用哪个镜像源快速下载安装包。nrm test
显示所有的。nrm test cnpm
显示cnpm的响应时间nrm help
: 打印帮助列表
使用
- 新增自定义镜像源
$ nrm add lwq https://weiqinl.com https://weiqinl.com
add registry lwq success
- 切换镜像源
$ nrm use lwq
Registry has been set to: https://weiqinl.com/
- 查看当前的镜像源
$ nrm current
lwq
- 删除自定义源,然后会自动使用npm镜像源作为当前镜像源
$ nrm del lwq
delete registry lwq success
Registry has been set to: https://registry.npmjs.org/
$ nrm current
npm
命令解析中的5、6、7、10命令,一般会在设置公司私有镜像的时候用到。设置镜像地址,验证登录,发布包。