cocoapods 總結

參考:http://blog.devtang.com/blog/2014/05/25/use-cocoapod-to-manage-ios-lib-dependency/html

 

安裝

$ sudo gem install cocoapods(若是執行不成功先將ruby的軟件源更換掉)
$ pod setup(執行pod命令以前須要先安裝xcode,並打開首次打開xcode贊成裏面的協議)

若是你的 gem 太老,可能也會有問題,能夠嘗試用以下命令升級 gem:ios

sudo gem update --system

另外,ruby 的軟件源 https://rubygems.org 由於使用的是亞馬遜的雲服務,因此被牆了,須要更新一下 ruby 的源,使用以下代碼將官方的 ruby 源替換成國內淘寶的源:git

gem sources -l
gem sources --remove https://rubygems.org/(不執行也能夠)

gem sources -a http://ruby.taobao.org/
//須要注意的是如今mac改爲https通訊因此地址須要換一下:
gem sources -a https://ruby.taobao.org/

還有一點須要注意,pod setup在執行時,會輸出Setting up CocoaPods master repo,可是會等待比較久的時間。這步實際上是 Cocoapods 在將它的信息下載到 ~/.cocoapods目錄下,若是你等過久,能夠試着 cd 到那個目錄,用du -sh *來查看下載進度。你也能夠參考本文接下來的使用 cocoapods 的鏡像索引一節的內容來提升下載速度。github

Cocoapods版本更新

$ sudo gem update --system // 先更新gem,國內須要切換源
$ gem sources --remove https://rubygems.org/(能夠不作,若是以前作了的話)
$ gem sources -a http://ruby.taobao.org/(如今已經不能用了)
$ gem sources -a
https://gems.ruby-china.org

$ gem sources -l \*\*\* CURRENT SOURCES \*\*\* http://ruby.taobao.org/ $ sudo gem install cocoapods // 安裝cocoapods $ pod setup

//查看pod版本
pod -v(--version)

ERROR:  While executing gem ... (Errno::EPERM)Operation not permitted - /usr/bin/xcodeproj的解決辦法:xcode

sudo gem install -n /usr/local/bin cocoapodsruby

而後pod setupapp

若是報錯或者長時間卡着不動:curl

打開https://github.com/CocoaPods/Specspost

fork到本身的帳戶下url

將Spaces clone到本地:git clone https://github.com/CocoaPods/Specs.git(把這個地址改爲你本身的)

將clone的Specs項目的文件夾更名爲master,而後拖到/Users/用戶名/.cocoapods/repos目錄下

而後pod setup成功

 

pod setup error:

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

Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

解決辦法:sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer(具體路徑要根據本身的實際狀況而定)

 

Cloning into 'master'...

fatal: unable to access 'https://github.com/CocoaPods/Specs.git/': SSLRead() return error -9806

 

解決辦法:brew reinstall git --with-brewed-curl --with-brewed-openssl

 

RPC failed; curl 18 transfer closed with outstanding read data remaining

解決辦法:git config --global http.postBuffer 2M

 

Cocoapods升級可能致使的問題

ios archives 出現的是other items而不是iOS Apps的解決方案

參考:http://www.cnblogs.com/fengtengfei/p/4831011.html

雖然知道是本地版本和工程裏面(podfile.lock中標示的cocoapods版本)不一致致使的問題,可是不知道怎麼修改工程裏面的cocoapods版本(我嘗試了一下直接修改lock文件中的版本號,可是不對),最後沒辦法,我將Pods文件夾和Podfile.lock文件刪除從新執行pod install才解決了這個問題

 

pod install/pod update更新慢的問題

最近使用CocoaPods來添加第三方類庫,不管是執行pod install仍是pod update都卡在了Analyzing dependencies不動

緣由在於當執行以上兩個命令的時候會升級CocoaPods的spec倉庫,加一個參數能夠省略這一步,而後速度就會提高很多。加參數的命令以下:

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

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

或者

pod install --no-repo-update

pod update --no-repo-update

相關文章
相關標籤/搜索