解决方案:指定https方式,使用代理
错误提示:
- $ npm install
- ......
- bower angular-mocks#1.5.x ECMDERR Failed to execute "git ls-remote --tags --heads
- https://github.com/angular/bower-angular-mocks.git", exit code of #128 fatal: unable to access
- 'https://github.com/angular/bower-angular-mocks.git/': Empty reply from server
-
- Additional error details:
- fatal: unable to access 'https://github.com/angular/bower-angular-mocks.git/': Empty reply from server
- 复制代码
分析:这段脚本执行区git拉取代码所用到(默认用ssh)的端口被禁止使用.应该改用https的方式进行下载.
最后在堆栈溢出找到这个方案
- git config --global url."https://".insteadOf git://
- 复制代码
再次执行 这个问题没再出现
- $ npm install
- 复制代码
ps: 这个https方式有几率会报错
分析:这里是被墙了
错误提示
- $ npm install
- ......
- ECMDERR Failed to execute "git ls-remote --tags --heads
- https://github.com/angular/bower-angular-animate.git", exit code of #128 fatal: unable to access
- 'https://github.com/angular/bower-angular-animate.git/': OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
- 复制代码
分析原因还是因为https的方式,撞在了墙上.git默认是不走系统代理的,所以我们需要指定代理来使用https拉取github代码.
解决方案:配置代理
代理配置方法如下(当然啦,最后那个 url 改成自己的代理地址和端口):
- git config --global http.proxy http://127.0.0.1:1080
- git config --global https.proxy https://127.0.0.1:1080
- 复制代码
撤销代理:
- git config --global --unset http.proxy
- git config --global --unset https.proxy
- 复制代码
如果要查当前的代理配置,分别是:
- git config --global --get http.proxy
- git config --global --get https.proxy
- 复制代码
最后成功运行
- $ npm install
- ......
- angular-resource#1.5.11 app\bower_components\angular-resource
- └── angular#1.5.11
- npm notice created a lockfile as package-lock.json. You should commit this file.
- npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\fsevents):
- npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted
- {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
- up to date in 106.584s
- 复制代码