iOS开发技术部落技术iOS开发中的bug

Failed to connect to GitHub to u

2018-02-25  本文已影响5438人  千若逸

今天pod search 一个库时发现搜索到的版本比github上的最新版本旧,于是采用下面的命令更新Cocoapods的库

pod repo update master --verbose

执行后却报了下面的错误:

Updating spec repo `master`
[!] Failed to connect to GitHub to update the CocoaPods/Specs specs repo - Please check if you are offline, or that GitHub is down

这是为何呢,明明不久前刚刚更新Cocoapods为1.3.1版本啊。

搜索才发现是Github在不久之前的2018年2月23号移除了一些低加密标准协议,包括TLSv1/TLSv1.1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,相关链接在这里:Weak cryptographic standards removed

这就意味着Mac系统对应的openssl也需要更新。

这里提供了全套升级办法,搬运过来:

$ which openssl
/usr/bin/openssl

$ openssl version
OpenSSL 0.9.8zh 14 Jan 2016

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

$ brew update

$ brew install openssl

$ brew upgrade openssl

`` If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

$ echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile

$ which openssl
/usr/local/opt/openssl/bin/openssl

$ openssl version
OpenSSL 1.0.2n  7 Dec 2017

$ brew install rbenv ruby-build

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
$ source ~/.bash_profile

$ rbenv install --list

Available versions:
  1.8.5-p52
  1.8.5-p113
  1.8.5-p114
  1.8.5-p115
  1.8.5-p231
  1.8.6
:
  2.1.0
  2.1.1
  2.1.2
:

$ rbenv install 2.1.0

$ rbenv versions
* system (set by /Users/username/.rbenv/version)
  2.1.0

$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

$ rbenv global 2.1.0

$ rbenv versions
  system
* 2.1.0 (set by /Users/username/.rbenv/version)

$ ruby --version
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin16.0]

$ gem install cocoapods -n /usr/local/bin

$ which pod
/usr/local/bin/pod

$ pod --version
1.4.0

完成上面一系列操作后,Cocoapods将会升级到最新的1.4.0版本。再执行pod repo update master --verbose就没有问题了。

上一篇下一篇

猜你喜欢

热点阅读