今早升级pods的时候,看到1.8.0的CocoaPods
正式版出了。于是升级了。之后pod install
的时候,被强制安装了新的源trunk
.
使用时,我发现,pod repo update
的界面变了,不仅没有了之前的进度和速度,还变慢了。我搜索了一下trunk
,都是说和个人建立自己的源有关,于是我迅速提交了一个故障报告。CocoaPods 1.8.0 added 'trunk' to my repo though I don't use 'trunk' #9190。
很快收到了回复,说这个是1.8.0的新功能,采用cdn
替换了原本的master
。通俗说,就是用分布各地的服务器来替换了原本的GitHub
的源。理论上讲,使用了cdn
之后,如果你的附近有源服务器,就会加速你更新pods的速度。
但实际上我这里反而重回龟速了。
CocoaPods 1.8希望你这么做
删除掉原本的master
千万别这么做!
pod repo remove master
只要你这么做了,以后的操作就都是基于trunk
的了。
如何脱离trunk
如果你已经有了trunk
pod repo remove trunk
master
,采用此命令恢复
如果你已经删掉了git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master
最重要的一步
打开你每个项目的Podfile
,在最顶部添加
source 'https://github.com/CocoaPods/Specs.git'
trunk
的方式已经成为了新的默认。如果还想使用旧的方式,就必须每个Podfile
顶部都指定源。
两个脚本
为已有的Podfile添加源
#!/bin/bash
echo -e "source 'https://github.com/CocoaPods/Specs.git'\n" | cat - Podfile > temp && mv temp Podfile
新建Podfile
#!/bin/bash
pod init
echo -e "source 'https://github.com/CocoaPods/Specs.git'\n" | cat - Podfile > temp && mv temp Podfile
此外
如果你对于自己的网络有信心,可以测试一下使用cdn
的网速。满意的话,也可以按照官方的指导做,删掉master
。这样的好处就是不用每个Podfile
都需要指定源了。
在终端使用代理
如果你的代理包含socks5
,可以在~/.bashrc
文件中添加两行。
alias proxy='export all_proxy=socks5://127.0.0.1:1086'
alias unproxy='unset all_proxy'
这样就可以在终端中使用proxy
开启代理,可以极大地加速终端下访问GitHub
的速度。