使用场景
场景1
假如你是一名程序猿,想必肯定对经常访问类似github、stackoverflow等一些国外的开源源码库或社区,假如你是一名iOS 程序猿,那想必很有可能会使用过cocoapods去管理一些三方的依赖库。
cocoapods目前支持很多主流的iOS三方开源库,使用它去管理三方库依赖很简单、方便,是一件让人愉悦的事情。不过由于cocoapods官方库的sepc文件代码仓库是托管在github上面的,国内访问github却是一件不怎么愉快的事(一般都比较慢)。
在你使用:
$pod update
指令去更新依赖库时,如果没有VPN的话,就会有一个较长的等待。这是因为它默认会先从github更新sepc库,然后才去获取最新的具体依赖库代码。此时即使你所依赖的三方库已经是最新的,这个spec的更新依然会进行。
场景2
当你所在维护iOS项目即有对一些开源三方库的依赖,又有对自己项目团队封装的一些私有库,为了方便管理,那么你可以创建cocoapods私有库,去统一管理所有的依赖库。
#使用步骤
1.克隆官方库
你需要从cocoapods官方sepc库克隆一份完整的specs文件库,然后推送到自己的git服务器(公司有自己的就直接创建一个项目,没有可以使用国内开源的git服务器,比如oschina)。
2.使用克隆库
你需要在你项目的Podfile中指定spec文件源:
$source 'http://[private]/cocoaspecs.git'
这之后,你执行pod的更新操作时,就是默认从私有的spec库查找更新了,自己的git服务器,速度当然快多喽。
3.更新克隆库
使用克隆库时为了获取官方库的更新,和官方库保持一致,你需要在必要的时候进行克隆库的更新。简单的git操作:
$git clone https://github.com/CocoaPods/Specs.git
$git remote set-url [private git server url]
$git pull
$git push
4.自动化
如果每次都要靠手动的更新才可以达到同步官方库的目的,反而使cocoapods的使用变得复杂,这是使用一些自动化的工具(比如jenkins),就可以达到自动更新的目的。
具体可查看jenkins实现cocoapods官方sepc库映射自动更新。
[引用]:创建cocoapods私有库http://www.cocoachina.com/ios/20150228/11206.html