这是我参与11月更文挑战的第2天,活动详情查看:2021最后一次更文挑战
- 公司项目用公司的源,自己项目用 npm 源,公司项目和自己项目之间反复横跳
-
npm install卡死...各个镜像源之间反复横跳- ...
总有一个需要在各个源之间反复横跳的场景在等着你
不用 nrm 怎么换源?
临时换源
单独针对某一次安装使用指定源
// 指定淘宝镜像安装
$ npm install --registry=https://registry.npm.taobao.org
永久换源
全局永久设置使用指定源,这样就不用每次都像上面一样通过 --registry 指定源来换源了。当然,如果要切换别的源,也是同样的操作
// 全局永久指定淘宝镜像安装
$ npm config set registry https://registry.npm.taobao.org
换源后可以下面这样查看当前源,来检查是否换源成功
$ npm config get registry
// https://registry.npm.taobao.org/
有了 nrm 之后
安装
$ npm install -g nrm
如有遇到安装失败的情况,建议检查下 node 和 npm 的版本
查看可选源
nrm 内置了几个常用的源,可以直接通过 nrm ls 来查看所有内置源和自己添加的源
$ 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 use 『别名』 来切换到指定源
// 切换到淘宝镜像源
$ nrm use taobao
Registry has been set to: https://registry.npm.taobao.org/
增加源
我们也可以根据自己的需要通过 $ nrm add 别名 地址 来添加自己的源,比如公司的私有源
$ nrm add xxx http://registry.npm.xxx.org/
删除源
用 $ nrm del 别名 来删除不需要的源
$ nrm del <registry>
测试源
有时候我们安装包比较慢,想换到个速度比较快的源,就可以这样测试一下,直接测出所有源的速度,非常好用
$ nrm test
* npm ---- 2627ms
yarn --- 1758ms
cnpm --- 604ms
taobao - 94ms
nj ----- 10229ms
npmMirror 13575ms
edunpm - 588ms
如果是 yarn
依然有 yrm 来帮忙管理源,使用方法跟 nrm 一样