OSX10.11 CocoaPods 升级总结

Posted Jieson Wu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OSX10.11 CocoaPods 升级总结相关的知识,希望对你有一定的参考价值。



本文不会讨论CocoaPods的各种使用技巧以及各种原理,只是简单记录一下在升级过程中遇到的问题,如果使用中有各种问题来欢迎交流。

Podfile.loc 文件变化

前几天一个小伙更新了CocoaPods,其中podfile.lock文件随之也发生了变化,其中一个第三方库MBProgressHUD找不到了:

-  MBProgressHUD: c47f2c166c126cf2ce36498d80f33e754d4e93ad

+  MBProgressHUD: 1569cf7ace17a8bac47aabfbb8580a49690386d1

这是其中的变化,于是我就去pod update,但是提示我pod版本太旧,于是我执行了命令:

sudo gem update cocoapods -V

技术分享
 

?google之后在Stackoverflow上找到了这个一些方法:

在终端中输入:

sudo nvram boot-args="rootless=0"; sudo reboot

然而我重启电脑之后还是没有解决问题,上述问题依然存在,猜想应该系统应该是做了一些别的限制吧。探寻之后认为比较靠谱的方法是:

sudo gem install -n /usr/local/bin cocoapods --pre

这个方法是将CocoaPods 安装在/usr/local/bin 这个目录上。

pod --version 系统显示

技术分享
 

显示cocoaPod安装成功,跟新Repos

执行命令:

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

技术分享
 

提示我 source repos可能过时,我就去执行:

pod repo update

但是国内跟新我的速度又太慢,我又不能忍,

研究了一下用户目录下.cocoapods的结构,大胆猜测,pod setup, pod update命令是克隆一个cocoapod 的Spec库,然后想执行pod setup命令终端之后能不能取巧,说做就做

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

克隆了一份库到本地,将Specs重命名master之后可以工作,由此猜想pod setup应该执行的是FTP协议

请看结果:

技术分享
 

pod update 了一下,第三方库更新成功,折腾了半天终于解决了问题

总结及提问

1. OS X(已经更名为Mac OS)进一步提高了/usr/bin的权限

2. pod setup 底层使用了什么协议?为什么那么慢?

未来CTO

微信:wlaicto

关注我CTO之路从此开始

以上是关于OSX10.11 CocoaPods 升级总结的主要内容,如果未能解决你的问题,请参考以下文章

Mac OS X 10.11安装cocoapods

Mac OS X 10.11安装cocoapods

无法在OSX 10.11中安装CocoaPods

更新升级10.11 cocoapods安装出问题最简单的解决方法

OS X 10.11系统下cocoaPods安装注意事项

OS X10.12上安装cocoapods