前言
CocoaPods在首次安装后,不管是search、install还是update,都会强制的升级他的repo。这个repo起到了CocoaPods在本地缓存索引的作用,比如我们进行pod search的时候,实际是在本地进行检索的,这个repo是git上的一个仓库,由CocoaPods官方创建,地址如下:https://github.com/CocoaPods/Specs,存放了CocoaPods支持的各种三方库的信息,每次在执行pod search的时候,首先CocoaPods会主动的pull这个git,确保本地的索引信息是最新的,然后再在本地repo中进行搜索,以保证加载的速度。
关于CocoaPods的repo
repo,全称是Repository,顾名思义就是仓库的意思,当然就是git托管的仓库了。CocoaPods通过这个repo里的信息来获取各种三方库的信息。
针对三处红线标识的解释:
- 更新CocoaPods的master repo;
- 从https://github.com/CocoaPods/Specs 这个地址上克隆repo到本地;
- 下载git上的repo,需要下载的文件有1963451个,也就是190万个。
更新repo缓慢的问题
既然CocoaPods需要将一个git仓库克隆到本地,我们是否可以自己帮CocoaPods创建本地仓库呢?答案是可以的。我们找到CocoaPods存放repo的地方。终端输入open ~/.cocoapods/repos
,就打开了repo存放的路径。
解决思路:
- 将https://github.com/CocoaPods/Specszip下载到本地,放入repos文件夹。
将所有解压出来的文件放入.cocoapods/repos/master文件夹中.
- 将本地的文件,与https://github.com/CocoaPods/Specs关联,让CocoaPods识别本地仓库是从git上pull下载的。
- 2-1 初始化git:
1 | cd ~/.cocoapods/repos/master |
- 2-2 关联仓库:
1 | git remote add origin https://github.com/CocoaPods/Specs |