cocoapods使用

  这东西从去年就知道了,但是从心底里对着是抵触的。

  

在终端中把源换成淘宝的
gem sources --remove https://rubygems.org/
gem sources -a http://ruby.taobao.org/

查看当前的源
gem sources -l

执行安装命令
sudo gem install cocoapods

所有的项目的 Podspec 文件都托管在https://github.com/CocoaPods/Specs。第一次执行pod setup时,CocoaPods 会将这些podspec索引文件更新到本地的 ~/.cocoapods/目录下
pod setup

新建配置文件(相当于购物列表)
vim Podfile

  Podfile语法

 

1. pod ‘objection’’version’;

 例如,pod ‘MCDateExtensions’,不指定版本,在pod update时会获取最新的版本;pod ‘MCDateExtensions’’~>1.0.0’,获取的版本信息是[1.0.0, 1.1.0). ~>是参照ruby的语法的,~>x.y.z, 的意思是版本号 x,y 固定,但可以大于等于 z。通常版本号的命名有其惯例:x major 版本号升级表示有 API 发生不向后的兼容性变动,y minor 版本号升级表示有功能新增,z tiny 版本号升级表示 bugs 修正。因此 “~> x.y.z” 可以让我們保有升级弹性,又不致于升級太多让程序发生不兼容错误;

 

2. 从本地pod files, pod 'AFNetworking', :path => '~/Documents/AFNetworking'此目录下一定要有.podspec文档

 

3. 从git server端pod files

To use the master branch of the repo:

pod 'AFNetworking', :git => 'https://github.com/gowalla/AFNetworking.git', :branch => ‘develop’

 

Or specify a commit:

 

pod 'AFNetworking', :git => 'https://github.com/gowalla/AFNetworking.git', :commit => '082f8319af'

 

将Podfile & Podfile.lock & workspace放到git仓库中管理

原因:

Podfile.lock, 保证每个team成员使用的第三方库是同一个版本的

pod 'AFNetworking'      //不显式指定依赖库版本,表示每次都获取最新版本
pod 'AFNetworking', '2.0'     //只使用2.0版本
pod 'AFNetworking', '> 2.0'     //使用高于2.0的版本
pod 'AFNetworking', '>= 2.0'     //使用大于或等于2.0的版本
pod 'AFNetworking', '< 2.0'     //使用小于2.0的版本
pod 'AFNetworking', '<= 2.0'     //使用小于或等于2.0的版本
pod 'AFNetworking', '~> 0.1.2'     //使用大于等于0.1.2但小于0.2的版本
pod 'AFNetworking', '~>0.1'     //使用大于等于0.1但小于1.0的版本
pod 'AFNetworking', '~>0'     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

编辑完Podfile文件后,执行pod install,然后进入工程目录打开 工程名字.xcworkspace 文件。
posted @ 2015-10-12 15:30  解忧杂货店  阅读(145)  评论(0编辑  收藏  举报