淘宝 NPM 镜像
https://npm.taobao.org/
以前我们介绍过cnpmjs.org和最近推出的淘宝 npm 两个 NPM 镜像。除此之外,还有一些国外的 NPM 镜像。不同地区访问不同的镜像速度可能有差异,然后各个镜像各自都可能有少数包暂时没有同步,因此,有时候需要切换 NPM 镜像。相比每次切换时都手动指定相应参数,使用nrm 要方便的多。
nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换:
安装
; npm install -g nrm
使用
列出可选的源
; nrm ls
* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - http://registry.npm.taobao.org/
eu ----- http://registry.npmjs.eu/
au ----- http://registry.npmjs.org.au/
sl ----- http://npm.strongloop.com/
nj ----- https://registry.nodejitsu.com/
带 *
的是当前使用的源,上面的输出表明当前源是官方源。
切换
切换到taobao
; nrm use taobao
Registry has been set to: http://registry.npm.taobao.org/
增加源
你可以增加定制的源,特别适用于添加企业内部的私有源。私有源可以使用cnpmjs架设。
nrm add <registry> <url> [home]
删除源
nrm del <registry>
测试速度
你还可以通过 nrm test
测试相应源的响应时间。
例如,测试官方源的响应时间:
; nrm test npm
npm ---- 1328ms
测试所有源的响应时间:
; nrm test
npm ---- 891ms
cnpm --- 1213ms
* taobao - 460ms
eu ----- 3859ms
au ----- 1073ms
sl ----- 4150ms
nj ----- 8008ms
注意,为了取得较准确的结果,可以考虑多次测试取平均值。
许可
nrm 为开源软件,使用 MIT 许可。
镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在):
1.通过config命令
npm config set registry https://registry.npm.taobao.org
npm info underscore (如果上面配置正确这个命令会有字符串response)
2.命令行指定
npm --registry https://registry.npm.taobao.org info underscore
3.编辑 ~/.npmrc
加入下面内容
registry = https://registry.npm.taobao.org
搜索镜像: https://npm.taobao.org
建立或使用镜像,参考: https://github.com/cnpm/cnpmjs.org
From:http://segmentfault.com/a/1190000000473869
From:https://cnodejs.org/topic/4f9904f9407edba21468f31e