CocoaPods相关

CocoaPods 安装过程+总结

2017-03-10  本文已影响0人  湘郎

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中的库的版本。

上一篇下一篇

猜你喜欢

热点阅读