我们在本地跑iOS case时,可使用真机,但使用模拟器会更方便。拉取iOS app代码,然后编译,选择在iPhone x模拟器上运行。每次我接取新代码进行编译时,时常会遇到各种各样的错误提示。原来是因为新代码使用了新版本的podSpec来管理代码,而我本地没有,造成编译失败。为此,我使用命令
pod repo update
来更新本地的pod spec。发现一直报错:
fatal: unable to access 'https://github.com/CocoaPods/Specs.git/': LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
使用推荐的pod repo update --verbose也有类似的问题。
网上查了下原因,发现主要是github源太慢造成的。推荐换成国内的镜像。使用如下命令查看本地的源:
pod repo
返回内容如下:
master
- Type: git (master)
- URL: https://github.com/CocoaPods/Specs.git
- Path: /Users/xxx/.cocoapods/repos/master
于是,使用如下命令更换成国内源:
https://mirror.tuna.tsinghua.edu.cn/help/CocoaPods/ 清华mirror主页说明
https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git
执行到第二行,pod repo add master https://xxxx时,我本地有错误提示。
[!] To setup the master specs repo, please run `pod setup`
如果执行这个pod setup,就会发现非常慢,几乎没有速度。后来查找资料,发现有的版本的pod不支持此命令,于是需要将Specs手动clone到本地。
cd ~/.cocoapods/repos //此时应看不到master文件夹了,因为通过pod repo remove master命令删除了
git clone --depth=1 https://xxx.git master
成功后,进入自己的工程目录,编辑Podfile,增加新源:
https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git'
保存后,执行命令:
pod install
拉取必要的依赖。然后编译、运行即可。