[英]cocoapods - 'pod install' takes forever
我試圖用pod install
命令更新現有的pod install
,但它需要永遠運行。
詳細模式顯示它卡在下一行(永遠)
更新規范 repo
master
$ /usr/bin/git pull --no-rebase --no-commit
卡住后沒有網絡活動。
我遇到了同樣的問題,我通過運行這里給出的以下命令解決了它
pod repo remove master
pod setup
pod install
你可以跑
pod install --verbose
看看幕后發生了什么……至少你會知道它卡在哪里(它可能是一個 git clone 操作,由於你的網絡速度慢等而花費了太長時間)
更好地了解為什么它似乎卡住了(運行詳細可以讓你得到這樣的東西
-> Installing Typhoon (2.2.1)
> GitHub download
> Creating cache git repo (~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92)
> Cloning to Pods folder
$ /usr/bin/git clone https://github.com/typhoon-framework/Typhoon.git ~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92 --mirror
Cloning into bare repository '~/Library/Caches/CocoaPods/GitHub/0363445acc1ed036ea1f162b4d8d143134f53b92'...
是找出您要克隆的 git repo 的大小.. 如果您從 github 克隆.. 您可以使用以下格式:
/repos/:user/:repo
因此,例如,要了解上述 repo 類型
https://api.github.com/repos/typhoon-framework/Typhoon
並且返回的 JSON 將有一個大小鍵值。 所以上面的返回
"size": 94014,
這是大約 90mb。 難怪它需要永遠! (順便說一句......當我寫這篇文章的時候......它剛剛完成......哈!)
更新:可可豆莢在開始下載您的 podfile 中列出的依賴項之前所做的一件常見的事情是下載/更新它自己的倉庫(他們稱之為設置 Cocoapods 主倉庫..看看這個:
pod install --verbose
Analyzing dependencies
Updating spec repositories
$ /usr/bin/git rev-parse >/dev/null 2>&1
$ /usr/bin/git ls-remote
From https://github.com/CocoaPods/Specs.git
09b0e7431ab82063d467296904a85d72ed40cd73 HEAD
..
壞消息是,如果你按照上面的過程,找出可可豆莢回購多大..你會得到這樣:“大小”:614373,...這是很多。
所以為了更准確地了解安裝自己的倉庫需要多長時間..您可以使用pod setup
單獨設置可可豆主倉庫:
$ pod help setup
Usage:
$ pod setup
Creates a directory at `~/.cocoapods/repos` which will hold your spec-repos.
This is where it will create a clone of the public `master` spec-repo from:
https://github.com/CocoaPods/Specs
If the clone already exists, it will ensure that it is up-to-date.
然后運行pod install
2019 年的更新答案 - Cocoa Pods 團隊轉而使用他們自己的 CDN 解決了這個問題,這是由於 GitHub 速率限制,如下所述: https : //blog.cocoapods.org/CocoaPods-1.7.2/
TL;DR 您需要將Podfile
的源代碼行更改為:
source 'https://cdn.cocoapods.org/'
打開終端並輸入:
$ sudo gem update cocoapods
從您的項目中刪除所有 pod(棘手的部分):
手動
安裝
$ [sudo] gem install cocoapods-deintegrate
跑
$ pod deintegrate
在這里,我們將再次安裝 Pod
更改您的位置您的目錄
$ cd yourprojectdirectory
通過添加您需要的行來編輯podfile
$ open -a Xcode podfile
或者
$ nano podfile
最后再次安裝 pod
$ pod install
希望這可以幫助
我找到了另一種解決問題的方法
pod install --verbose --no-repo-update
這個對我有用。
正如這里指出的git-remote-http 進程在后台運行。 我從活動監視器轉到這個過程,退出這個過程恢復了在 POD INSTALL 后卡在“更新本地規范存儲庫”上的 pod 進程
截至 2016 年 8 月 15 日,repo 是一個巨大的 2.39GB 文件。 我打開活動監視器查看終端在做什么。 它正在下載這個巨大的文件。
這對我有用:
~/.CocoaPods
下的所有內容Podfile.lock
和Pods
文件夾。sudo gem install cocoapods --verbose
pod install --verbose
我建議使用 --verbose 標志,因為終端在給出命令操作的進度時不是很好。 詳細選項有很大幫助!
只需逐步完成以下操作:
下載https://github.com/CocoaPods/Specs/archive/master.zip
在終端中運行以下命令:
pod setup --verbose
在終端中打開新標簽並運行
mv ~/.cocoapods/repos/master/.git ~/tempSpecsGitFolder
打開 master.zip(解壓)
mv Specs-master ~/.cocoapods/repos/master
mv ~/tempSpecsGitFolder ~/.cocoapods/repos/master/.git
cd [項目文件夾]
pod install --no-repo-update
嘗試清除 CocoaPods 緩存,按照此處所述重新下載並重新安裝所有 Pod
rm -rf "${HOME}/Library/Caches/CocoaPods"
rm -rf "\`pwd\`/Pods/"
pod update
正如其他答案中提到的,這需要永遠,因為 cocoapods master repo 的大小很大。 可以使用以下步驟減少此時間。
1) 在您的 github 存儲庫上創建私有規范文件路徑。 提供此路徑https://github.com/yourpathForspecs.git ' 作為 podfile 中的源。
2) 確定您需要的所有存儲庫及其依賴項(在這些存儲庫的 cocoapods 上的 podspec.json 文件中提到)並從 cocoapods 獲取它們的 podspec.json 文件。 將這些 podspec.json 文件及其文件夾(例如螺栓的最新版本文件夾)添加到此規范存儲庫中。
3) 在 podfile 中刪除源 ' https://github.com/CocoaPods/Specs.git '
4)豆莢更新
這將花費更少的時間,因為這需要僅獲取和下載您需要的 pod,而不是整個 cocoapods 存儲庫。 就我而言,它將 pod 更新時間從平均 15-20 分鍾減少到最多 3-4 分鍾。
吊艙安裝步驟
第一個開放式終端:
chmod o-w /usr/local
sudo chmod o-w /usr/local
sudo gem install cocoapods
如果系統中已經安裝了Pod,請按照以下步驟操作
sudo gem install cocoapods -V
sudo gem update --system
pod setup
cd /Users/apple/Desktop/Black\&WhiteImageDemo
pod init
open -a Xcode Podfile
pod install
我遇到了同樣的問題,然后我意識到我仍在“非常糟糕的網絡”上運行網絡調節器。 關閉它解決了這個問題。
希望能幫助某人。
我這樣解決了這個問題:
rm -fr ~/Library/Caches/CocoaPods && \
gem update --system && \
gem update && \
gem cleanup && \
pod setup
參考: http : //blog.cocoapods.org/Repairing-Our-Broken-Specs-Repository/
就連我也是這么想的。 如果您打開Activity Monitor
您可以看到它正在以 GIT 的名義下載一些東西。
我發現這個提示很有用。
我遇到過同樣的問題。 運行后
pod install
Setting up CocoaPods master repo
iterm2 停留在設置 CocoaPods 上。
我通過運行解決了這個問題
sudo gem install CocoaPods
這是在CocoaPods 網站中提到的
經過半天的調查為什么Analyzing Dependencies
需要永遠,我發現我正在安裝最新的Firebase
pod (7.1.0),它依賴於GoogleAppMeasurement
7.1.0 版,還有另一個 pod,這是一個廣告中介框架,其中包括Google-Mobile-Ads-SDK
。 此 SDK 依賴於低得多的GoogleAppMeasurement
~ 6.0 版本。 我能夠通過從廣告中介中注釋掉沖突的 pod 來安裝 pod。 像這樣的東西:
# Ad network framework
pod 'SomeMediationNetwork/Core'
# pod 'SomeMediationNetwork/GoogleMobileAds' # - the conflicting pod
pod 'SomeMediationNetwork/Facebook'
pod 'SomeMediationNetwork/SmartAdServer'
pod 'SomeMediationNetwork/Mopub'
我不得不聯系廣告中介庫發布商來解決這個問題,最有可能的方法是更新到最新的Google-Mobile-Ads-SDK
pod 並發布新版本。
我希望這個可以幫助其他一些正在敲頭的人
有時也會發生在我身上,我只是:
pod clean
pod update --verbose
11.2019 為我提供的解決方案
你好,我嘗試了很多東西,但沒有任何效果。 嘗試連接到這個站點https://cdn.cocoapods.org/如果你不能,那么就使用 VPN 並進行pod install
等。不要忘記使用--verbose
來了解正在發生的事情。
找到下載 cocoapods 的另一種方法是下載此處提供的快照之一。 它有點舊,但 .bz2 壓縮文件的下載速度要快得多。 下載后,我將其復制到~/.cocoapods/repos/
然后使用bzip2 -dk *.bz2
壓縮。
解壓縮需要一段時間,一旦完成,我將新解壓縮文件的擴展名更改為 .tar 並執行tar xvf *.tar
解壓縮。 這將顯示正在創建的文件列表,也需要一段時間。
最后,當我在項目文件夾內運行pod repo list
時,它顯示主文件夾已添加為 repo。 因為我仍然不斷收到一個錯誤,說它無法找到我正在尋找的 pod 的規范,所以我轉到主文件夾並執行git fetch
,然后執行git merge
。 git fetch 耗時最長,大約一個小時,速度為 50 KB/s。 我使用 fetch 和 merge 而不是 pull,因為我遇到了問題,即fatal: the remote end hung up unexpectedly
。 它現在是最新的,我能夠得到我想要的吊艙。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.