解決angular安裝 unable to access 'https:github...' Empty reply from server

TianYou發表於2018-07-20

解決方案:指定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
複製程式碼

參考

為 git 設定 http https 代理

相關文章