CocoaPods 安装过程+总结

1、检查当前rvm环境        $rvm -v

`输出结果:( 存在 rvm 环境)`muxuguixiandeMacBook-Pro:~ jijiucheng$ rvm -vrvm1.27.0(latest) by Wayne E. Seguin , Michal Papis [https://rvm.io/]

`输出结果:(不存在 rvm 环境)`muxuguixiandeMacBook-Pro:~ jijiucheng$ rvm -v-bash: rvm:commandnotfound

如果不存在rvm环境,先安装配置rvm环境        $curl -L https://get.rvm.io | bash -s stable

期间可能会问你 `sudo管理员` 密码,以及自动通过 `homebrew` 安装依赖包;

等待一段时间后就可以成功安装好 `rvm`。

然后,载入 RVM 环境(新开 Termal 就不用这么做了,会自动重新载入的)。

$source ~/.rvm/scripts/rvm

输出结果:(^_^)(什么都没有输出)muxuguixiandeMacBook-Pro:~ jijiucheng$source ~/.rvm/scripts/rvm

③ 再次检查 rvm 是否安装正确。

$rvm -v

`输出结果:( 存在 rvm 环境)`muxuguixiandeMacBook-Pro:~ jijiucheng$ rvm -vrvm1.27.0(latest) by Wayne E. Seguin , Michal Papis [https://rvm.io/]

2、用rvm安装ruby环境      $ rvm list known

指定ruby版本进行更新( 此处按照ruby2.3.0版本进行更新 )。

$ rvm install 2.3.0

查询已安装的 ruby:

$ rvm list

卸载一个已安装版本:

$ rvm remove 2.3.0

检查更新 ruby 版本环境(正常情况下从此步骤开始)

CocoaPods是用gem ruby实现的,要想使用它首先需要有gem ruby的环境。且 MAC 的 OS X系统默认已经可以运行ruby。

此处建议gem ruby包环境升级到2.6.x以上。

检查gem ruby版本号:

$sudo gem -v

检查结果:( 默认情况下版本应该较低,建议升级到 )muxuguixiandeMacBook-Pro:localjijiucheng$ gem -v2.5.1

更新gem ruby版本号:

$gem update --system

更新成功:( 实际打印可能与此不同,但是成功了就会显示 Successfully )muxuguixiandeMacBook-Pro:localjijiucheng$ gemupdate--systemUpdating rubygems-updateFetching: rubygems-update-2.6.7.gem (100%)Successfully installed rubygems-update-2.6.7

此种提示:( 表示已经是最新的 gemruby环境 )muxuguixiandeMacBook-Pro:~ jijiucheng$ gemupdate--systemLatestversioncurrently installed. Aborting.

检查ruby 源

$ gem sources -l

检查结果:( 如果电脑没安装过 CocoaPods,此时应该是默认 ruby 源 )muxuguixiandeMacBook-Pro:~ jijiucheng$gem sources -l*** CURRENT SOURCES ***https://rubygems.org/

移除ruby 源

$ gem sources --removehttps://rubygems.org/

移除结果:muxuguixiandeMacBook-Pro:local jijiucheng$ gem sources --removehttps://rubygems.org/https://rubygems.org/ removed from sources

替换添加国内镜像源ruby-china 源,因为上面已经提到国内镜像源taobao 源已经停止维护了,所以此处替换的是ruby-china 源,且尽量确保只有一个ruby-china 源

$ gem sources --addhttps://gems.ruby-china.org

$ gem sources --addhttps://gems.ruby-china.com     (因为该源的域名备案问题,提供.com代替.org)

替换结果:muxuguixiandeMacBook-Pro:local jijiucheng$ gem sources --addhttps://gems.ruby-china.orghttps://gems.ruby-china.org addedtosources

再次检查此时的 ruby 源:( 已经变成了 ruby-china 源 )muxuguixiandeMacBook-Pro:localjijiucheng$ gem sources -l*** CURRENT SOURCES ***https://gems.ruby-china.org

3、安装 CocoaPods

安装 CocoaPods(sudo 表示管理员执行指令)(此处需要输入一次密码)

$ sudo geminstallcocoapods                                      OS X10.11之前用这个命令

$ sudo gem install -n /usr/local/bin cocoapods        OS X10.11以后用这个命令

底端有 gems installed 标志着安装 CocoaPods 成功

$ pod setup   安装成功之后执行这个命令    可是这个要等太久太久了  下面介绍个实用的办法,还可以看到进度条

$ cd ~/.cocoapods/repos

$ git clone https://github.com/CocoaPods/Specs.git

好了,现在可以尽情的看到进度条在动了。安心等下载完成吧,再也不用在那里死等那个pod setup了。有进度提示,放心多了。

等下载好之后,只需要把这个Specs 改名为master 就可以了。

然后执行 pod repo 可以看到如下信息:

master

- Type: git (master)

- URL:  https://github.com/CocoaPods/Specs.git

- Path: /Users/fengsh/.cocoapods/repos/master

1 repo

最后,pod setup 成功了。现在就可以cd到你的项目路径下尽情的pod install 了。注意,pod install 和pod update也慢,但这两命令慢的话,我们也可以自己搭建私有的cocoapod库来中转一下。来解决这个慢的问题。

使用 pod install 还是 pod update,原文这里

许多人开始使用CocodPods的时候认为pod install只是你第一次用CocoaPods建立工程的时候使用,而之后都是使用pod update,但实际上并不是那会事。简单来说,就是:

1.使用pod install来安装新的库,即使你的工程里面已经有了Podfile,并且已经执行过pod install命令了;所以即使你是添加或移除库,都应该使用pod install。

2.使用pod update [PODNAME] 只有在你需要更新库到更新的版本时候用。

pod install

这个是第一次在工程里面使用pods的时候使用,而且每次你编辑你的Podfile(添加、移除、更新)的时候使用。

1:每次运行pod install命令的时候,在下载、安装新的库的同时,也会把你安装的每个库的版本都写在了Podfile.lock文件里面。这个文件记录你每个安装库的版本号,并且锁定了这些版本。

2:当你使用pod install,它只处理了pods的依赖,但是不会处理Podfile.lock文件。

对于在Podfile.lock里面所列出的pods,会下载在Podfile.lock里面明确的版本,并不会去检查是否该库有新的版本。

对于不在Podfile.lock里面的库,会找到Podfile里面描述对应版本(例如:pod "MyPod", "~>1.2")。

pod outdated

当你运行pod outdated命令,CocoaPods会列出那些所有较Podfile.lock里面有新版本的库(那些当前被安装着的库的版本)。这个意思就是,如果你运行pod update PODNAME,如果这个库有新的版本,并且新版本仍然符合在Podfile里的限制,它就会被更新。

pod update

当你运行 pod update PODNAME 命令时,CocoaPods会帮你找到并更新到这个库的新版本,而不需要考虑Podfile.lock里面的限制,它会更新到这个库尽可能的新版本,只要符合Podfile里面的版本限制。

如果你运行pod update,后面没有跟库的名字,CocoaPods就会更新每一个Podfile里面的库到尽可能的最新版本。

正确用法:

你应该使用pod update PODNAME(库名)去只更新某个特定的库(检查是否有新版本,并尽可能更新到新的版本)。相反,使用pod install,这个命令不会更新那些已经安装了的库。

当你在你的Podfile里面添加了一个库的时候,你应该使用pod install,而不是pod update,这样既安装了这个库,也不需要去更新其它的已安装库。

你应该使用pod update去更新某个特定的库,或者所有的库(在Podfile的限制中)。

提交你的Podfile.lock文件:

在此提醒,即使你一向以来,不commit你的Pods文件夹到远程仓库,你也应该commit并push到远程仓库中。 要不然,就会破坏整个逻辑,没有了Podfile.lock限制你的Pods中的库的版本。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容