CocoaPods的一些理解

在这片博客中,我将分享我从cocopods中学到的东西。

如果你使用Cocoapods,你的.gitignore文件中会有什么。

这个问题在debate on SO中被提及,但是我建议只追踪Podfile和Podfile.lock文件就行了。Pods文件,.xcworkspace文件,都在.gitignore里。

Not Cuckoo for CocoaPods可以获取更多关于这个问题正反两面资料。

pod install vs pod update

pod install

pod install 命令的作用是下载并且安装最新的第三方库文件,在Podfile.lock 文件中写入每一个已经安装的第三方库文件的版本号。这个文件的作用就是记录安装的第三方库文件的版本号,并且锁住它们的版本。

pod update

当你运行 pod update 命令 更行某些库文件,CocoaPods将会视图去找到这些库文件的最新版本,而不去考虑Podfile.lock文件中与这些库文件对应的版本号。它将会更新pod到最新的版本(只要它符合Podfile文件的版本限制要求)。

更多知识,请读Detailed presentation of the commandsCocoa?Pods 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: CocoaPods

UIKonf 2014 — Orta Therox: CocoaPods

MCE 2014: Orta Therox – CocoaPods and the road to 1.0

时间: 2024-11-04 19:25:22

CocoaPods的一些理解的相关文章

对于CocoaPods的简单理解,实践安装使用过程和常见问题

(本文是自己通过其他文章进行的自我编辑和简单修改,请大家凑活看看) 一.什么是CocoaPods CocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理.开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和第三方开源库的时间. 在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要 1.把开源库的源代码复制到项目中 2.添加一些依赖框架和动态库 3.设置-ObjC,-fno-objc-arc等参数 4.管理他们的更新

objc系列译文(6.4):深入理解 CocoaPods

核心组件 CocoaPods是用ruby写的,并划分成了若干个Gem包.CocoaPods在解析执行过程中最重要的几个包的路径分别是:CocoaPods/CocoaPods. CocoaPods/Core 和 CocoaPods/Xcodeproj. CocoaPods / CocoaPod 这是面向用户的组件,每当你执行一个pod命令时,这个组件将被激活.它包括了所有实用CocoaPods的功能,并且还能调用其他gem包来执行任务. CocoaPods / Core Core gem提供了与C

深入理解 CocoaPods

本文由 伯乐在线 - programmer.du 翻译自 Michele Titolo.欢迎加入技术翻译小组.转载请参见文章末尾处的要求. Cocoapods是 OS X 和 iOS 下的一个第三方库管理工具.你能使用CocoaPods添加被称作“Pods”的依赖库,并轻松管理它们的版本,而不用考虑当前的时间和开发环境. Cocoapods意义体现在两个方面.首先,引入第三方库无可避免地要进行各种各样的配置.对于Objective-C的初级开发者来说,项目配置可是一件艰巨的任务.在配置编译阶段和

cocoapods的安装,使用,卸载,以及你可能会遇到的坑..

首先, 不会用cocoapods的话如过你接手某些新项目是用cocoapods写的你会疯, 其次他真的很好用, 当然某些坑也是存在的,比如你用它导入了AFNetwork然后你需要修改一些AF的内部的代码以适应你项目的特殊需求,这时候cocoapods就会报错, 报错, 报错- OK,下面步入正题 在安装CocoaPods之前,首先要在本地安装好Ruby环境.MAC系统自带ruby环境但是某些老旧机型可能ruby版本过低会报错,不过更新一下就好,而安装ruby需要RVM . 步骤0 - 准备工作

从零开始学习CocoaPods安装和使用

从零开始学习CocoaPods安装和使用 转载: Code4App原创:http://code4app.com/article/cocoapods-install-usage http://m.ithao123.cn/content-9745764.html CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽

CocoaPods 安装和使用

一.<什么是CocoaPods> 官网描述:CocoaPods is the dependency manager for Swift and Objective-C Cocoa projects. It has almost ten thousand libraries and can help you scale your projects elegantly.(CocoaPods是一个独立的管理器,可以为Swift/Objective-C项目提供管理,它拥有数千万计的第三方库,因而可以帮

细聊 Cocoapods 与 Xcode 工程配置

前言 文章比较长,所以在文章的开头我打算简单介绍一下这篇文章将要讲述的内容,读者可以选择通篇细度,也可以直接找到自己感兴趣的部分. 既然是谈 Cocoapods,那首先要搞明白它出现的背景.有经验的开发者都知道 Cocoapods 在实际使用中,经常遇到各种问题,存在一定的使用成本,因此衡量 Cocoapods 的成本和收益就显得很关键. Cocoapods 的本质是一套自动化工具.那么了解自动化流程背后的原理就很重要,如果我们能手动的模拟 Cocoapods 的流程,无论是对 Cocoapod

安装CocoaPods学习

不得不说我第一次安装没有成功,花了很大力气,最后放弃了,今天再次尝试,还好成功啦,希望大家安装顺利吧,即使不顺利也不要放弃. 首先推荐几篇文章,可以很好的帮助你理解安装过程. 1:CocoaPods安装和使用教程 2:业界良心的淘宝大哥 如果这两篇文章您都看完啦,估计安装不会有什么问题了,我所记录的也就是我自己遇到的几个坑吧.简单记录一下,如果您有缘看到了,还是没有搞清楚,可以加我QQ或者发我邮件都可以.可以一起看看怎么弄. 0:开发机器信息:OS X Yosemite 版本 10.10.4 $

iOS依赖库管理工具之CocoaPods

CocoaPods 是开发 OS X 和 iOS 应用程序的一个第三方库的依赖管理工具.利用 CocoaPods,可以定义自己的依赖关系库 (称作 pods),并且随着时间的变化,在整个开发环境中对第三方库的版本管理非常方便. 1.为什么要用CocoaPods? 在iOS项目开发过程中,我们经常会使用一些第三方库,如AFNetworking.YYKit.Masonry等,通过这些优秀的第三方库,来帮助我们更有效率的进行开发.回想一下我们导入这些第三方库的过程: 第一步:下载第三方库的源代码并添加