最近更新一下CocoaPod的知识,文档的话,看官方的材料就够了:https://guides.cocoapods.org。
官方的文档写得已经非常详细,没什么可以补充的,就说明一下要点。
安装
1)因为CocoaPod基于ruby安装,rubygems.org存放在 Amazon S3 上面的资源文件间歇性被墙,所以使用淘宝的ruby镜像
$gem sources --addhttps://ruby.taobao.org/--removehttps://rubygems.org/
$gem sources -l
使用
pod install 和 update的区别
这个要说到Podfile.lock的作用,当使用完一次pod install后,会生成Podfile.lock文件,以后每次使用pod install都会获取Podfile.lock里指定的版本。即使有新版本可用,通过pod update才能获取到新版本。这样就能保证多人协作时,用的是相同版本的第三方库。
具体参考这里
1)https://guides.cocoapods.org/using/pod-install-vs-update.html
2)http://weibo.com/p/1001603800875490492754CocoaPods最佳实践探讨
我直接贴上结论
我提议的“最佳实践”解决了以下问题。
* Pods目录签入到版本控制系统,使产品代码没有外部依赖,不管什么时候都能从公司内网获取一份可直接运行的代码。
* 已发布版本的产品代码永久固定,不会随时间而变化,方便追踪问题和存档。
* 不要求项目成员装同样版本的CocoaPods,甚至可以不装CocoaPods。降低测试、设计人员使用代码的难度,也避免了CocoaPods本身兼容性引起的问题。
关于版本号的管理,(非常重要!请参考这里http://semver.org/lang/zh-CN/)
版本格式:主版本号.次版本号.修订号,版本号递增规则如下:
主版本号:当你做了不兼容的 API 修改,
次版本号:当你做了向下兼容的功能性新增,
修订号:当你做了向下兼容的问题修正。
先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。
向CocoaPod提交代码
CocoaPod非常贴心地提供了两个工具,让提交过程变得十分便利
1)Pod Lib Create 通过回答几个问题,就能创建一个Demo工程还有一个pod spec文件
https://guides.cocoapods.org/making/using-pod-lib-create.html
2)使用pod trunk服务,讲pod spec文件提交到cocoaPod的trunk。
http://guides.cocoapods.org/making/getting-setup-with-trunk
然后通过pod search就能找到自己提交的库了,第一次提交感觉还是挺好的。
创建私有CocoaPod
创建一个私有的CocoaPod库大同小异,就是自己创建一个git库来保存podspec文件。具体参考这里