前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决Cocoapods贼慢问题

解决Cocoapods贼慢问题

作者头像
LinXunFeng
发布2018-06-29 15:26:50
5.6K1
发布2018-06-29 15:26:50
举报
文章被收录于专栏:LinXunFeng的专栏

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

一、更换gem源

代码语言:javascript
复制
// 查看现有的源
gem source -l  

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

代码语言:javascript
复制
*** CURRENT SOURCES ***

http://ruby.taobao.org/

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

代码语言:javascript
复制
// 移除
gem sources --remove http://ruby.taobao.org/

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

二、更换pod repo源

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

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

代码语言:javascript
复制
~/.cocoapods/repos/

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

代码语言:javascript
复制
mkdir -p ~/.cocoapods/repos/

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

代码语言:javascript
复制
pod repo

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

代码语言:javascript
复制
- Type: git (unknown)
- URL:  https://github.com/CocoaPods/Specs.git
- Path: /Users/lxf/.cocoapods/repos/master

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

代码语言:javascript
复制
// 将当前国外的创建移除
pod repo remove master

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

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

最后需要update一下

代码语言:javascript
复制
pod repo update

repo update

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

代码语言:javascript
复制
source 'https://git.coding.net/CocoaPods/Specs.git'

source

补充

代码语言:javascript
复制
// 可以暂时使用我仓库里的Specs,更新时间为:2017-6-25
https://git.oschina.net/LinXunFeng/Specs.git

如果不知道怎么弄的话就按下面这种方式去搞吧,我试了几个国内免费的仓库,只有oschina的可以将gitHub上的Specs导入成功,接下来部署公钥,点击文章按要求去做,最后执行

代码语言:javascript
复制
// 注意YourUserName要改为你自己在码云上的用户名
 git clone git@git.oschina.net:YourUserName/Specs.git ~/.cocoapods/repos/master

这样的话就很快了,本人是4M小水管,所以400多k已经很不错了。这样就可以保证下载下来的第三方库是最新的!!!

要是还嫌麻烦的话就使用SPECS 中国镜像站

三、更换Homebrew源

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

升级git

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

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

查看当前git版本

代码语言:javascript
复制
git --version

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

代码语言:javascript
复制
git version 1.8.4.2

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

代码语言:javascript
复制
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就好了

代码语言:javascript
复制
brew install git

解决报错问题

代码语言:javascript
复制
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.

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.06.25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、更换gem源
  • 二、更换pod repo源
    • 补充
    • 三、更换Homebrew源
    • 升级git
      • 解决报错问题
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档