本文不會(huì)討論CocoaPods的各種使用技巧以及各種原理,只是簡(jiǎn)單記錄一下在升級(jí)過程中遇到的問題,如果使用中有各種問題來歡迎交流。
Podfile.loc 文件變化
前幾天一個(gè)小伙更新了CocoaPods,其中podfile.lock文件隨之也發(fā)生了變化,其中一個(gè)第三方庫MBProgressHUD找不到了:
- ?MBProgressHUD: c47f2c166c126cf2ce36498d80f33e754d4e93ad
+ ?MBProgressHUD: 1569cf7ace17a8bac47aabfbb8580a49690386d1
這是其中的變化,于是我就去pod update,但是提示我pod版本太舊,于是我執(zhí)行了命令:
sudo gem update cocoapods -V
?google之后在Stackoverflow上找到了這個(gè)一些方法:
在終端中輸入:
sudo?nvram?boot-args="rootless=0";?sudo?reboot
然而我重啟電腦之后還是沒有解決問題,上述問題依然存在,猜想應(yīng)該系統(tǒng)應(yīng)該是做了一些別的限制吧。探尋之后認(rèn)為比較靠譜的方法是:
sudo gem install -n /usr/local/bin cocoapods --pre
這個(gè)方法是將CocoaPods 安裝在/usr/local/bin 這個(gè)目錄上。
pod --version 系統(tǒng)顯示
顯示cocoaPod安裝成功,跟新Repos
執(zhí)行命令:
pod update? --verbose --no-repo-update
提示我 source repos可能過時(shí),我就去執(zhí)行:
pod repo update
但是國內(nèi)跟新我的速度又太慢,我又不能忍,
研究了一下用戶目錄下.cocoapods的結(jié)構(gòu),大膽猜測(cè),pod setup, pod update命令是克隆一個(gè)cocoapod 的Spec庫,然后想執(zhí)行pod setup命令終端之后能不能取巧,說做就做
git clone https://github.com/CocoaPods/Specs.git
克隆了一份庫到本地,將Specs重命名master之后可以工作,由此猜想pod setup應(yīng)該執(zhí)行的是FTP協(xié)議
請(qǐng)看結(jié)果:
pod update 了一下,第三方庫更新成功,折騰了半天終于解決了問題
總結(jié)及提問
1. OS X(已經(jīng)更名為Mac OS)進(jìn)一步提高了/usr/bin的權(quán)限
2. pod setup 底層使用了什么協(xié)議?為什么那么慢?
未來CTO
微信:wlaicto
關(guān)注我CTO之路從此開始