如果CocoaPods很久没有更新,那么在search、install、update,都会强制升级他的repo,然后如果安装他正常的安装程序,从github上下的时候,你会发现,这个过程不管你翻墙不翻墙,过程都是一样的慢,而且经常失败;

所以在网上查看大神们的解决方法的时候,可以直接从https://github.com/CocoaPods/Specs 这里下载,下载完成后,在本地关联下就可以了,这头了一天多,终于弄好了,最后感觉还是网络的原因,不过直接下载specs文件夹还是要快很多;

简单说下出现的错误,都是经常性出现的错误:

[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress

Cloning into 'master'...
remote: Counting objects: , done.
remote: Compressing objects: % (/), done.
error: RPC failed; curl SSLRead() return error - KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

如果正常下载的话,会经常性的出现上述错误,翻墙的话,虽然也是很慢,但是能慢慢一直下,最起码中间不会停,但是如果中间你的电脑锁屏了或是其他的原因,依然会报上述错误,接着就是pod setup继续安装,继续失败,死循环,墙不墙的根本没什么卵用;

关于CocoaPods的repo

repo,全称是Repository,顾名思义就是仓库的意思,当然就是git托管的仓库了。上面说过CocoaPods通过这个repo里的信息来获取各种三方库的信息,那么我们先来看看安装完CocoaPods后,首次进行search、install、update,都会有什么效果吧。

搜索Masonry为例,如下:

-> Masonry (1.1.)
Harness the power of Auto Layout NSLayoutConstraints with a simplified,
chainable and expressive syntax.
pod 'Masonry', '~> 1.1.0'
- Homepage: https://github.com/cloudkite/Masonry
- Source: https://github.com/cloudkite/Masonry.git
- Versions: 1.1., 1.0., 1.0., 1.0., 0.6., 0.6., 0.6., 0.6., 0.6.,
0.5., 0.5., 0.5., 0.5., 0.4., 0.3., 0.3., 0.3., 0.2., 0.2., 0.2.,
0.2., 0.2., 0.1., 0.1., 0.1., 0.0., 0.0. [master repo]

如果更新repo,或是首次安装,则会出现如下情况:

1、更新CocoaPods的master repo;

2、从https://github.com/CocoaPods/Specs 这个地址上克隆repo到本地;

3、下载git上的repo,需要下载的文件有1963451个,也就是190万个。

当时真的是没有什么好办法,网络不给力!

——————————————————————————————————————

解决思路:

既然Cocopods需要将一个git仓库克隆岛本地,我们可以直接把所需的repo下好,放到指定路径下 ~/.cocoapods/repos ,帮CocoaPods创建好本地仓库,然后关联下就可以了;

1、终端输入

open ~/.cocoapods/repos

如图:

2、下载好Specs文件

3、将下载好的文件如上图拖到 ~/.cocoapods/repos/master文件夹中,如下图:

4、终端输入:

cd ~/.cocoapods/repos/master/Specs

5、初始化:

git init

6、关联仓库:

git remote add origin https://github.com/CocoaPods/Specs

7、查看是否正常,终端输入:

pod repo

如下图:

8、然后进行 pod search 、 pod install操作,你会发现可以安装成功了,如下图:

9、pod update执行此操作时,会发现仍然会让我们更新repo,终端输入:

pod update --verbose --no-repo-update

达到不更新repo的效果,

我们有时pod search一个三方库,但却搜不到这个三方库的最新版本的时候,也可能是因为repo没有更新导致的,只要去gitHub找到想用的三方库,找到最新版本号,写在Podfile中,然后直接pod update就好了。以后自己想更新repo了,还是可以通过手动下载的方式进行替换,如果网络好,也可以直接pod update,让CocoaPods自己更新repo,只要能让我们首次安装CocoaPods后快点用起来,不被首次CocoaPods更新repo卡住耽误了时间就好

仅做记录!

 
 

最新文章

  1. 从无到有实现登录功能以及thinkphp怎么配置数据库信息
  2. Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结
  3. 初识JS正则表达式
  4. maven eclipse miss required library解决
  5. mybatis 简单配置
  6. 安装Sikulix
  7. [swustoj 785] Divide Tree
  8. fork与vfork的区别
  9. JVM性能调优监控工具
  10. vb ——ini 配置文件
  11. CodeForces 425E Sereja and Sets
  12. 使用Identity Server 4建立Authorization Server (2)
  13. 恢复Mysql丢失的root用户权限
  14. Linux上rpm实战搭建FTP服务器
  15. 1. Ansible 简介
  16. DTcms 模版用vs2015或2017 打开编辑时候 粘贴出问题 代码被调整
  17. 代码: !AJAX
  18. 老男孩Python自动化运维视频
  19. Linux之更改Nginx映射默认根目录
  20. java List转换为字符串并加入分隔符的一些方法总结

热门文章

  1. Java 调用 shell 脚本详解
  2. Oracle CPU使用率过高问题处理
  3. 4990: [Usaco2017 Feb]Why Did the Cow Cross the Road II 线段树维护dp
  4. db2 load选项
  5. Python之函数第三篇
  6. javaScript系列 [01]-javaScript函数基础
  7. SharePoint 读取内容的插件之SharepointPlus
  8. .Net转Java.05.为啥MySQL没有nolock
  9. C++ 中的不定参数与格式化字符串 # ## vsprintf
  10. 不同浏览器Firefox、IE6、IE7、IE8、IE9定义不同CSS样式