cocoapods-「ポッドインストール」は永遠にかかります


276

既存のポッドを更新しようとしました pod installコマンドを使用しが、実行に時間がかかります。

詳細モードは、次の行でスタックしたことを示します(永遠に)

スペックリポジトリの更新 master

$ / usr / bin / git pull --no-rebase --no-commit

スタックした後のネットワークアクティビティはありません。


14
90分間スタックした後、pod install次のステージに進みます。私はあまり我慢強くないと思います。
Hai Feng Kao

10
詳細なデバッグ情報を表示するには、pod install --verboseを実行します。一般的な状況では、gitの更新に時間がかかりすぎます。更新が必要ない場合は、pod install --no-repo-update
Wellbin Huang

2
ポッドの品質について何か言います。それらの人はすぐにそれを修正する必要があります。私はポッドに対処しなければならないたびにこれで立ち往生しています。
ジョニー

1
@HaiFengKao、インターネットが良くないので心配でした。追跡してみましたが、ダウンロード中は約350MBでした。リンクのThx、cocoapodsは独自のサーバーが必要だと思います。
GeneCode

2
5年後も同じように遅い。巨大なファイルの場合は20k秒。ばかげた。
Hasen

回答:


552

私は同じ問題に遭遇しました、そして私はここに与えられている次のコマンドを実行することでそれを解決しまし

pod repo remove master
pod setup
pod install

64
cocoapods-'pod repo remove master'は永遠にかかります。新しいスレッドを作成する必要がありますか?:)
dmitrynikolaev

6
おかげで、それはme.andのために働くも、あなたは、詳細デバッグ情報を表示するには--verboseを追加することができます
信号

2
@dmitrynikolaev私は最初、ポッドレポ削除マスターも永遠にかかると思いました。しかし、待つにはあと数分必要なだけです。ポッドの構成がわからないため、必要な時間が異なる場合がありますが、時間を増やしてください。
Chen Li Yong

22
明確にするために、与えられたソリューションに説明を追加するとよいでしょう。
DevGansta 2016年

4
でもポッドセットアップは以下で立ち往生、$は/ usr /ビン/ gitのクローンgithub.com/CocoaPods/Specs.git「マスター」へのクローニングマスター...あなたは〜/ .cocoapods /レポに」代わりに移動をポッドセットアップをスキップし、実行することができます'git clone github.com/CocoaPods/Specs.git master'
Ammar Mujeeb

158

あなたは走ることができます

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リポジトリのサイズを調べることです。githubからクローンを作成している場合は、次の形式を使用できます

/repos/:user/:repo

たとえば、上記のレポタイプについて調べるには

https://api.github.com/repos/typhoon-framework/Typhoon

返されるJSONには、サイズのキーと値が含まれます。上記が返された

"size": 94014,

これは約90MBです。それが永遠にかかるのも不思議ではありません!(ところで..私がこれを書いた頃には..ちょうど終わった.. ha!)


更新: ココアポッドがポッドファイルにリストされている依存関係のダウンロードを開始するに行う一般的なことの1つは、独自のリポジトリをダウンロード/更新することです(彼らはそれを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


15
これは、「WTF」のココアポッドが「最大」であるという、私がこれまでに見た唯一の一貫した説明です。
アレックスグレイ

2
マスターリポジトリをダウンロードすると、点滅するカーソルを見つめるだけで20分かかりました(150Mbのインターネット接続と
粗末なMacbook Pro Retina

specsディレクトリには17,000以上のファイル/ディレクトリがあります。それが彼らがそこでやっていることは何であれ、それは最もGitフレンドリーなアプローチではありません。
エリックレッペン、2016年

このコマンドを実行すると、ココアポッドはそれが終了したことを示しました。そのインストールで。ありがとうございました!
Jameela Huq 2017

それは、ダウンロードに時間がかかる大きな依存関係についてですほとんどの時間
OhadM

29

可能な解決策:

  1. Cocoaポッドを更新すると、この問題が解決する場合があります
  2. クリーンでフレッシュなインストールポッド

CocoaPodsの更新

ターミナルを開いて入力:

$ sudo gem update cocoapods

ポッドを再インストールする

ステップ1

プロジェクトからすべてのポッドを削除します(トリッキーな部分):

手動で

  1. プロジェクトのビルドフェーズですべてのポッドレコードを削除する(赤でマーク)

ここに画像の説明を入力してください

  1. Frameworksフォルダーの下のlibPods.aを削除します。

ここに画像の説明を入力してください

  1. プロジェクトディレクトリに移動して、Podfile.lock *、** Podsフォルダー、およびワークスペースを削除します(ゴミ箱からも削除します)。

CocoaPods De-Integrateを自動的に使用する

インストール

$ [sudo] gem install cocoapods-deintegrate

走る

$ pod deintegrate

ステップ2

ここで、ポッドを再度インストールします

ディレクトリの場所を変更します

$ cd yourprojectdirectory

必要な行を追加してpodfileを編集します

$ open -a Xcode podfile 

または

$ nano podfile

最後にポッドを再度インストールします

$ pod install

お役に立てれば


役に立たない。cocoapodsの新規インストール、pod init、pod installがいつまでもハングする
2016年

@woensまあそれはあなたがフェッチしているライブラリに依存します。プロジェクトからポッドを統合
解除

なし!それが全体のポイントです。これは、initから始めて、空のプロジェクトにインストールすると発生します。
2016年

@woensなしとはどういう意味ですか?ポッドがまったくないときにポッドをインストールするポイントはどこですか(正しく理解している場合)。
E-Riddie 2016年

空のプロジェクトを開始して、後で追加できるように準備するだけです。so:xcodeプロジェクトを作成し、pod initを実行し、pod installを実行します。この時点で、ポッドのインストールがハングします。
2016年



13

2016年8月15日の時点で、リポジトリは2.39GBの大容量ファイルです。アクティビティモニターを開いて、ターミナルの動作を確認しました。この巨大なファイルをダウンロードしていました。


13

2019の回答が更新されました-ココアポッドチームは、この問題を解決する独自のCDNを使用するようになりました。これは、GitHubのレート制限が原因でした。https//blog.cocoapods.org/CocoaPods-1.7.2/

TL; DRのソース行を次のように変更する必要がありますPodfile

source 'https://cdn.cocoapods.org/'

これは正解anno 2019です。承認された回答のみを変更できる場合...
Ian Kemp

8

これは私のために働いたものです:

  1. 以下のすべてのコンテンツを削除します ~/.CocoaPods
  2. 既存のフォルダを削除Podfile.lockPodsます。
  3. PodFileはそのままにしておきます。
  4. 走る sudo gem install cocoapods --verbose
  5. 走る pod install --verbose

ターミナルはコマンドアクションの進行状況を示すのに最適ではないため、-verboseフラグを使用することをお勧めします。詳細オプションは非常に役立ちます。


5
〜/ .cocoapodsのマスターリポジトリは巨大(〜1GB)なので、削除して再インストールするのに長い時間がかかることに注意してください。これに気付いていたらpod install --verbose、マスターリポジトリを削除する前に試してみました。
BinaryNate 2017年

7

以下の手順を踏んでください。

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


6

ここで説明されているように、CocoaPodsキャッシュをクリアして、すべてのポッドを再ダウンロードして再インストールしてください

rm -rf "${HOME}/Library/Caches/CocoaPods"

rm -rf "\`pwd\`/Pods/"

pod update

4

他の回答で述べたように、cocoapodsマスターレポのサイズが巨大であるため、それは永遠にかかります。この時間は、次の手順を使用して短縮できます。

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)ポッドの更新

cocoapodsリポジトリ全体ではなく、必要なポッドのみをフェッチしてダウンロードする必要があるため、これは大幅に時間がかかりません。私の場合、ポッドの更新時間は平均15〜20分から最大3〜4分に短縮されました。


1

ポッドのインストール手順

最初に開いたターミナル:

chmod o-w /usr/local

sudo chmod o-w /usr/local

sudo gem install cocoapods

システムにすでにポッドがインストールされている場合は、以下の手順に従ってください

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

1

私も同じ問題を抱えていましたが、「Very Bad Network」でまだNetwork Conditionerを実行していることに気付きました。これをオフにすることで問題は解決しました。

それが誰かを助けることを願っています。






0

11.2019での解決策

こんにちは私は多くのことを試みましたが、何もうまくいきませんでした。VPNを使用するだけで実行できない場合は、このサイトhttps://cdn.cocoapods.org/に接続してみてくださいpod install。また--verbose、何が起こっているのかを理解するために使用することを忘れないでください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.