cocoaPods
安装cocoaPods
打开终端,输入
$sudo gem install cocoapods $ pod setup
这时候可能会提示输入密码,因为中国的防火墙,这里很可能会报错
pod setuERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ECONNRESET: Connection reset by peer - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)
这里需要把地址改成淘宝的
修改方法
$ sudo gem source --remove https://rubygems.org/ $ sudo gem source -a https://ruby.taobao.org/
然后执行
$ sudo gem uninstall cocoapods $ sudo gem install xcodeproj $ sudo gem install cocoapods $ pod setup
当出现
Setting up CocoaPods master repo
Setup completed
的时候,cocoapods就安装完成了
使用cocoapods
在终端打开工程文件夹
注意不要安装错了地方,是那个包含有xcodeproj文件的文件夹
执行指令:
这时候查看工程文件夹就会发现多了一个podfile文件,直接双击打开,然后在其中写上
platform :ios, '8.0' target 'TargetName' do pod 'AFNetworking', '~> 3.0' end
其中platform项目支持的版本号
target是项目名称
pod是要加入的第三方
这些写完之后,在终端执行
$ pod install
出现
[!] Please close any current Xcode sessions and use `ZCF_2.0.0.xcworkspace` for this project from now on.
Sending stats
说明安装成功,这时候再查看工程文件,就会发现多了三个文件,以后打开工程需要从那个xcworkspace打开才不会出错
cocoapods也有自己的版本,在第一次安装cocoapods的时候安装的是最新版,但是时间久了版本会老,有的第三方可能就下不下来
Podfile.lock
在使用svn或git来进行多人开发的时候,Podfile.lock文件可以保证大家在pod install的时候,安装的版本是一样的,所以这个文件要提交
关于pod install 和pod update
pod install:
这个是第一次在工程里面使用pods的时候使用,并且,也是每次你编辑你的Podfile(添加、移除、更新)的时候使用。
每次运行pod install命令的时候,在下载、安装新的库的同时,也会把你安装的每个库的版本都写在了Podfile.lock文件里面。这个文件记录你每个安装库的版本号,并且锁定了这些版本。
以后执行的时候,该库的版本都是记录在Podfile.lock里面版本,并不会去检查是否该库有新的版本
pod update:
更新某个库 pod update name 更新所有库 pod update
当你运行 pod update 命令时,CocoaPods会帮你更新到这个库的新版本,而不需要考虑Podfile.lock里面的限制,它会更新到这个库尽可能的新版本,只要符合Podfile里面的版本限制。
如果你运行pod update,后面没有跟库的名字,CocoaPods就会更新每一个Podfile里面的库到尽可能的最新版本。
总结:
你应该使用pod update 去只更新某个特定的库。对应的,你应该使用pod install,这个命令不会更新那些已经安装了的库。
当你在你的Podfile里面添加了一个库的时候,你应该使用pod install,而不是pod update,这样既安装了这个库,也不需要去更新其它的已安装库。
同时,记得在commit提交代码到远程仓库时,带上Podfile.lock文件。
查看目前版本
$ pod --version