Osheep

时光不回头,当下最重要。

解决Cocoapods贼慢问题

做为一个iOS开发者,时不时就要与一些好用的框架或者库打交道,而且大多数还是国外的地址,访问相当慢,所以也就引发了一系列贼慢的问题,该篇文章就来好好总结下解决方案

一、更换gem源

// 查看现有的源
gem source -l

我之前换过淘宝的源,在这里就会显示【 http://ruby.taobao.org/

*** CURRENT SOURCES ***

http://ruby.taobao.org/

但是现在淘宝源已经不再维护了,所以需要换为目前国内还在维护的【ruby-china】,如果之前没换过则默认为【https://rubygems.org/ 】,这个是国外的,对于我们来说也是比较慢的,所以也得将其更换掉

// 移除
gem sources --remove http://ruby.taobao.org/

// 添加 ruby-china 的源
gem sources --remove https://gems.ruby-china.org/

二、更换pod repo源

我相信目前大部分友友的这个repo的源还是【 https://github.com/CocoaPods/Specs.git 】,因为一开始我们安装 pod 的时候执行了【pod setup】而这个是默认为我们安装的是国外的源。其实这个setup只是将CocoaPods/Specs通过git克隆到本地,所以我们也可以如此

这里需要注意一点,就是存放的位置是固定的

~/.cocoapods/repos/

如果没有这个目录请自行创建,已经有的就不用自己再去创建了

mkdir -p ~/.cocoapods/repos/

执行【pod repo】可以查看当前仓库的信息

pod repo

如果这里有多个文件夹,则会显示多条信相关息

- Type: git (unknown)
- URL:  https://github.com/CocoaPods/Specs.git
- Path: /Users/lxf/.cocoapods/repos/master

好,我们开始更换pod repo源,这里我选用国内【git.coding.net】上的Specs,也有其它国内的,需要的话自行搜索吧,这里就以coding上的Specs为例

// 将当前国外的创建移除
pod repo remove master

// 将Coding上的通过git克隆到本地并修改文件夹的名字为master
git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

如图所示,正在下载 pod repo源【这里请大家忽略本人的网速,带宽不给力,不然咻咻咻的就搞定了】

《解决Cocoapods贼慢问题》

最后需要update一下

pod repo update
《解决Cocoapods贼慢问题》

repo update

注意点: 在每一个项目中创建的podfile文件的第一行都要填写下面这行source命令。这个可能会面临着使用的第三方库不是最新的问题,比如gitHub上面某个第三方的库已经是3.0了,结果只能下载使用2.x的,这个自己衡量吧。当然也可以自己在Coding上面新建一个工程将CocoaPods/Specs同步到你自己的仓库然后来使用~

source 'https://git.coding.net/CocoaPods/Specs.git'
《解决Cocoapods贼慢问题》

source
// 可以暂时使用我仓库里的Specs,更新时间为:2017-6-25
https://git.oschina.net/coderlxf/Specs.git

三、更换Homebrew源

这个不是必须的,只做额外补充~~
手贱升级了一下Cocoapods,然后就提示 git 版本问题,具体情况请往下看~

升级git

在升级完Cocoapods后,不论执行什么pod命令都提示git版本问题

// 比如这些命令
pod repo  |  pod setup  |  pod install
// git版本问题,使用当前CocoaPods需要git版本在1.8.5以上
 [!] You need at least git version 1.8.5 to use CocoaPods

查看当前git版本

git --version

好吧,当前git版本也是很旧了,换换换~

git version 1.8.4.2

这里我们用Homebrew来帮我们升级git。但是,这里先不急着升级,我们先把Homebrew的源换成国内的清华镜像源

cd "$(brew --repo)"
git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git

// 更新本地的镜像
brew update

更新完毕会提示 Already up-to-date. 接着再更新git就好了

brew install git

解决报错问题

Error: Another active Homebrew update process is already in progress.
Please wait for it to finish or terminate it to continue.
Warning: git 2.13.1 is already installed, it's just not linked.
You can use `brew link git` to link this version.

这里按它要求一步步操作即可

《解决Cocoapods贼慢问题》

点赞