CocoaPods的一些理解
2015-01-12 23:19
274 查看
在这片博客中,我将分享我从cocopods中学到的东西。
在Not Cuckoo for CocoaPods可以获取更多关于这个问题正反两面资料。
pod update
更多知识,请读Detailed presentation of the commands,CocoaPods on NSHipster。
UIKonf 2014 — Orta Therox: CocoaPods
MCE 2014: Orta Therox – CocoaPods and the road to 1.0
如果你使用Cocoapods,你的.gitignore文件中会有什么。
这个问题在debate on SO中被提及,但是我建议只追踪Podfile和Podfile.lock文件就行了。Pods文件,.xcworkspace文件,都在.gitignore里。在Not Cuckoo for CocoaPods可以获取更多关于这个问题正反两面资料。
pod install vs pod update
pod installpod install 命令的作用是下载并且安装最新的第三方库文件,在Podfile.lock 文件中写入每一个已经安装的第三方库文件的版本号。这个文件的作用就是记录安装的第三方库文件的版本号,并且锁住它们的版本。
pod update
当你运行 pod update 命令 更行某些库文件,CocoaPods将会视图去找到这些库文件的最新版本,而不去考虑Podfile.lock文件中与这些库文件对应的版本号。它将会更新pod到最新的版本(只要它符合Podfile文件的版本限制要求)。
更多知识,请读Detailed presentation of the commands,CocoaPods on NSHipster。
你能够编辑pod文件的来源。
是的,你能够编辑pod文件的来源,并且你的改变将会被下一个pod更新重写,除非你是用:path,关于这个知识点,请看reply by @orta。你的.xcodeproj文件仍然保持不变。
实际上,在第一次pod安装之后,.xcodeproj文件仍然保持不变。就像Cocoapods指出的一样。CocoaPods将会出啊关键一个新的Xcode项目,这个项目将会创建一个静态的库文件,这个库文件的作用是给第三方库文件建立依赖,并且把他们链接到一个叫做libPods.a 的文件中。这个静态的库文件变成了你原始项目的一个依赖文件。xcworkspace文件生成,并且能够被正常地使用。这种方法能够使原始的xcodeproj文件保持不变。
沙盒中得文件不会和Podfile.lock保持同步,这是因为Manifest.lock。
每次运行pod install命令,都会生成一份Podfile.lock文件的拷贝。如果你曾经遇到过沙盒没有和 Podfile.lock文件保持同步,这是因为沙盒中得Podfile.lock文件和Podfile.lock文件是不一样的。因为pods目录下的问津不总是受Podfile.lock文件的版本控制,这里有一种方法能够确保开发者在运行pods之前更新,否者app就会崩溃,或者报一种奇怪的编译错误。
参考文献
February 2014 Tech Talk: CocoaPodsUIKonf 2014 — Orta Therox: CocoaPods
MCE 2014: Orta Therox – CocoaPods and the road to 1.0
相关文章推荐
- iOS系列译文:深入理解 CocoaPods
- 深入理解 CocoaPods
- 深入理解 CocoaPods
- 关于安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2)
- 安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2.2)
- 深入理解Cocoapods
- 关于安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2)
- CocoaPods 的安装以及一些常见安装错误解决办法
- 关于安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2)
- 深入理解 CocoaPods
- 关于cocoapods中的一些细节问题
- 深入理解 CocoaPods
- 关于安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2)
- 对于CocoaPods的简单理解,实践安装使用过程和常见问题
- 深入理解 CocoaPods
- 深入理解 CocoaPods
- CocoaPods的一些略为高级一丁点的使用
- 关于安装cocoapods遇到的一些坑(ERROR: Error installing cocoapods: activesupport requires Ruby version >= 2.2)
- Mac 上面使用cocoapods的一些问题