npm install 安装过程中,报如下错误:
bower install 报错fatal: unable to access 'https://github.com/angular/bower-angular-touch.git/'
说明与GITHUB通信失败,查看npm配置:
git config --global -l
确认无设置任何代理:
npm config get proxy
npm config get https-proxy
如果返回值不为null,继续执行:
npm config set proxy null
npm config set https-proxy null
另外可设置DNS为8.8.8.8 增加成功几率
vi /etc/resolve.conf
nameserver 8.8.8.8
方法一:(单个)
开始我一个一个解决,把https换成了git
例子如下:
git config --global url."git://github.com/angular/bower-angular-touch.git/".insteadOf https://github.com/angular/bower-angular-touch.git/
然后再执行 npm install ,但是类似的错误太多了,一个一个替换太麻烦,来个批量的。
git config --global url."git://".insteadOf https://
然后执行 npm install(一次不行多试几次)
方法二:(换源)
查看当前源:
npm config get registry
设置最原始注册源:
npm config set registry http://registry.npmjs.org/
使用淘宝源,再执行:
npm install --registry=https://registry.npm.taobao.org --unsafe-perm=true --allow-root
使用 cnpmjs 源:
npm config set registry http://registry.cnpmjs.org
方法四:(cnpm)
直接使用淘宝的cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
方法五:CDN加速
git config --global url."https://ghproxy.com/https://github.com".insteadOf "https://github.com"
或
git config --global url."https://hub.fastgit.org/".insteadOf "https://github.com/"
注意:以上两点都是对 https 协议进行代理设置,也就是仅对 git clone https://www.github.com/xxxx/xxxx.git
这种命令有效。对于 SSH 协议,也就是 git clone git@github.com:xxxxxx/xxxxxx.git
这种,依旧是无效的。