Die Pod-Installation bleibt auf "Einrichten von CocoaPods Master Repo".

238

Ich klone ein Projekt aus einem Git-Repo, aber wenn ich pod installdie erste Zeile ausführe, die ich sehe, ist "Einrichten des CocoaPods Master-Repo" und danach kann ich nichts mehr sehen, die Konsole stoppt dort.

Ich weiß nicht was passiert. Weiß jemand was hier passiert? Warum hören CocoaPods dort auf?

Gabriel Goncalves
quelle

Antworten:

273

Sie könnten versuchen, im ausführlichen Modus zu laufen:

pod install --verbose

Dies zeigt Ihnen, was Cocoapods vorhaben:

Setting up CocoaPods master repo

Cloning spec repo `master` from `https://github.com/CocoaPods/Specs.git` (branch `master`)
  $ /usr/bin/git clone 'https://github.com/CocoaPods/Specs.git' master
  Cloning into 'master'...

( wie hier vorgeschlagen)

Für mich hat der obige Schritt ziemlich lange gedauert, da das Repo (Dezember 2016) jetzt 1,1 GB beträgt

Ben Clayton
quelle
186

pod installoder pod setupruft das gesamte Repo mit der Geschichte ab, wenn Sie es zum ersten Mal ausführen. Sie benötigen diesen Commit-Verlauf nicht.

pod setup
Ctrl +C
cd ~/.cocoapods/repos 
git clone --depth 1 https://github.com/CocoaPods/Specs.git master

Bei einer anständigen Netzwerkverbindung (4 Mbit / s) dauert es ungefähr 2 Minuten. masterVerzeichnis ist rund 519M groß.

lisowski.r
quelle
3
Awesome, habe ich dies mehrere seltsame Probleme zu beheben Ich hatte auf pod update, wie fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree. Musste nur rm -rf ~/.cocoapodsvor dem Ausführen der vorgeschlagenen Befehle.
Gobe
1
Dies sollte die akzeptierte Antwort sein. Auch eine Notiz mit einem neuen MBP und Sierra pod repo remove masterhat nichts gebracht. Ich sprang zum nächsten Schritt und fuhr fort und es funktionierte perfekt
Zack Shapiro
4
Bitte beachten Sie, dass 'Pod Update' immer noch einen vollständigen Abruf verursacht. 'pod install' wird nicht. Info: blog.cocoapods.org/Master-Spec-Repo-Rate-Limiting-Post-Mortem
Vaiden
1
Warum erwähnt cocoapods.org diese Art der Installation nicht? Verschwenden Sie keine Tonnen von Entwicklerstunden mehr!
Alessio Dal Bianco
2
Ich musste mitcd PROJ_DIR; pod install --no-repo-update
mstrthealias
50

Versuchen Sie diesen Befehl, um seine Arbeit zu verfolgen.

while true; do
  du -sh ~/.cocoapods/
  sleep 3
done
Daniel Shin
quelle
7
alternativ:watch du -sh ~/.cocoapods
maxhawkins
Danke, dass du das gepostet hast. Am Ende landete mein .cocoapods-Hauptverzeichnis bei 746 MB. Es dauerte ungefähr 20 Minuten, ging mit dem Hund spazieren, stellte den Wasserkocher auf oder machte einfach ein Nickerchen :-)
John Griffiths
Viel nützlicher als nur --verbose. Zeit für eine Tasse Tee!
Feld
45

Das Problem ist, dass Sie keine Befehlszeilentools installiert haben, glaube ich. Versuchen Sie, im Terminal auszuführen:

sudo gem update --system

Laden Sie anschließend die Befehlszeilentools von Apple herunter und suchen Sie nach "Befehlszeilentools" und laden Sie die richtige Version für Ihr Betriebssystem herunter. Sobald Sie es installiert haben, führen Sie es im Terminal aus:

sudo gem install cocoapods
pod setup
Greg
quelle
Hallo, ich versuche, Befehlszeilentools von Xcode zu installieren, aber es wird dort nicht angezeigt (ich habe Außenseiter). Ich folge auch diesen Schritten stackoverflow.com/questions/15371925/… und jetzt konnte ich überprüfen, ob ich Befehlszeilentools habe installiert, aber "Cocoapods Master Repo einrichten" ist immer noch da, wenn ich "pod install" oder "pod setup" ausführe
Gabriel Goncalves
Wenn Sie auf den Link aus meinem Beitrag in der linken oberen Ecke des Suchfelds klicken, geben Sie Folgendes ein: Befehlszeilentools, und Sie haben oben die Version für Maverick OS.
Greg
2
Vielen Dank für Ihre Hilfe, aber das hat nicht funktioniert. Ich habe Befehlszeilentools installiert und die Meldung wird weiterhin angezeigt und geht nicht weiter
Gabriel Goncalves
@Gabox Haben Sie nach der Installation der Befehlszeilentools sudo gem install Kakaopads und Pod-Setup aufgerufen?
Greg
1
Ja, ich habe sudo gem install cocoapods angerufen. Ich löse das Problem nach diesem Tutorial cocoafactory.com/blog/2013/02/01/… Vielen Dank für Ihre Hilfe
Gabriel Goncalves
21

Möglicherweise sind diese Informationen hilfreich:

Offizielle Antwort: http://blog.cocoapods.org/Master-Spec-Repo-Rate-Limiting-Post-Mortem/

Als Ergebnis dieser Diskussion https://github.com/CocoaPods/CocoaPods/issues/4989

Kurz gesagt: Das CocoaPods-Repository hat eine große Anzahl von Abrufen von GitHub und es war das Problem. Änderungen sind seit Version 1.0.0.beta.6 verfügbar.

Tipps aus diesem Dokument:

If for whatever reason you cannot upgrade to version 1.0.0 just yet, you can perform the following steps to convert your clone of the Master spec-repo from a shallow to a full clone:

$ cd ~/.cocoapods/repos/master
$ git fetch --unshallow

Mein Hack zur ersten Installation:

1. pod setup
2. Ctrl+C
After that I could find ~/.cocoapods/repos/ empty directory 
3. Download  https://github.com/CocoaPods/Specs/archive/master.zip
4. unpack it to ~/.cocoapods/repos/
5. Move to project folder
6. pod install --no-repo-update

Heute dauert es fast 15 Minuten

Tina Zh
quelle
Ich muss Tina dafür loben. Dies ist der schnellste Weg, um dieses Problem zu lösen. Ich habe es benutzt und es ist effektiv! lol. Veröffentlicht am 1. Dezember 2016. :)
Glenn
Um ganz klar zu sein, wenn Sie sagten, Sie sollen den Ordner entpacken, sieht er folgendermaßen aus: ~ / .cocoapods / repos / spec-master / ...
A-Majeed
Nein, Sie sollten es als ~ / .cocoapods / repos / master entpacken (einfach umbenennen), wie hier empfohlen. github.com/CocoaPods/Specs/releases
Tina Zh
soll ich die extrahierten Dateien in das Verzeichnis ~ / .cocoapods / repos / kopieren ODER soll ich in das Stammverzeichnis meines xcode-Projekts kopieren?
Anirudha Mahale
Sie sollten Dateien direkt nach ~ / .cocoapods / repos / master entpacken. Danach: Rufen Sie "pod install --no-repo-update" im Projektordner auf
Tina Zh
16

Wenn CocoaPods dies tut, wird das gesamte Repo der Spezifikationen heruntergeladen ~/.cocoapods. Dies kann je nach Verbindung eine Weile dauern. Ich würde es zuerst explizit mit versuchenpod setup

Keith Smiley
quelle
Hallo, ich führe das Pod-Setup aus und die Meldung "Cocoapods Master Repo einrichten" ist immer noch da. Wie lange könnte es dauern? Ich habe die Befehlszeilen-Tools installiert
Gabriel Goncalves
1
Sollte nicht so lange dauern, aber ich würde es ein paar Minuten geben
Keith Smiley
1
Hallo, es wird immer noch "Cocoapods Master Repo einrichten" angezeigt und niemals vorwärts gehen
Gabriel Goncalves
6
Zitieren von masweb: "Überprüfen Sie dort ls -lta ~ / .cocoapods / repos / master / .git / properties / pack / sein temporäres Download-Paket".
lpapp
2
Tipp für meine Obsessiven, die auf dem obigen Final Contest aufbauen: Führen Sie brew install watchdann aus watch ls -lta ~/.cocoapods/repos/master/.git/objects/pack/, um den Fortschritt zu überwachen.
Cduhn
8

Nichts oben hat bei mir funktioniert, also hat das funktioniert:

pod setup
Ctrl +C
pod repo remove master
cd ~/.cocoapods/repos 
git clone https://github.com/CocoaPods/Specs master

Einmal abgeschlossen hat es funktioniert.

Prost!

praneybehl
quelle
8

Was ich versucht habe und schneller als das Repo zu klonen:

  1. pod setup
  2. Strg + C nach dem Erstellen des Hauptverzeichnisses
  3. Laden Sie .zip von https://github.com/CocoaPods/Specs master herunter
  4. Kopieren Sie den Inhalt nach ~/.cocoapods/repos
  5. pod install --no-repo-update in meinem Projektordner

Danach konnte ich endlich sehen, wie die Pods installiert wurden

Viel Glück!

BEARBEITEN: Die Zip-Größe beträgt 144 MB (6. Juli 2017)

Federico Jordan
quelle
6
pod setup --verbose 

Ich führe gerade den oben genannten Befehl aus, aber wie von @Joe Blow erwähnt, werden absolut keine Informationen über den Fortschritt angezeigt.

Wenn Sie jedoch den Aktivitätsmonitor unter Mac (Task-Manager unter Windows?) Öffnen, wird auf der Registerkarte "Netzwerk" ein Prozess mit dem Namen "git-remote-https" angezeigt, und die Größe von "Empfangene Bytes" nimmt zu. Nach dem Herunterladen von ca. 300 MB wurde es gestoppt und ich konnte weitere Fortschritte im Terminalfenster sehen.

Ahsas Sharma
quelle
schön, danke fürs teilen. aber es ist seltsam, dass --verbose nicht für Sie funktioniert ...
Gabriel Goncalves
Eigentlich werden am Anfang einige Informationen gedruckt, aber dann muss beim Herunterladen dieser 300 MB + -Datei lange gewartet werden ... ich hoffe trotzdem, dass es geholfen hat!
Ahsas Sharma
Die Größe ist auf 482 MB
gestiegen
6

Ich habe die folgenden 4 Befehle verwendet

cd ~/.cocoapods/repos
git clone "https://github.com/CocoaPods/Specs" master --depth 1
cd master
git fetch --unshallow
pod setup

Ich nahm mir wie erwartet Zeit, aber zumindest musste ich nicht auf den Bildschirm steigen und mich fragen, was im Hintergrund passiert.

LynAs
quelle
5

Dies passiert nur einmal.

  • Das Master-Repo hat + -1 GB (November 2016) .

  • Um den Fortschritt zu verfolgen , können Sie die Aktivitätsüberwachungs-App verwenden und nach suchen git-remote-https.

  • Beim nächsten Mal ( pod setupoder pod repo update) werden nur alle Spezifikationsrepos schnell aktualisiert ~/.cocoapods/repos.

Jakub Truhlář
quelle
4

Sie müssen das Repo entfernen und neu einrichten ...

pod repo remove master
pod setup
Yogesh Wadhwa
quelle
Das ist eigentlich kein Fehler, nur ein Mangel an Informationen ... Sie müssen nur --verbose hinzufügen, wenn Sie den Befehl ausführen, um zu überprüfen, was passiert
Gabriel Goncalves
4

Ich überwache den Download-Fortschritt mithilfe von

while true; 
do   
du -sh ~/.cocoapods/;   
sleep 3; 
done

Der Fortschritt ist sehr langsam ... und einige Male gescheitert. Aber irgendwie nach dem Erhöhen des Git-Puffer-Limits über diese Befehlszeile git config --global http.postBuffer 2Mverbessert sich die Download-Geschwindigkeit erheblich und nach dem Herunterladen von insgesamt 347 MB ​​im ./cocoapodsOrdner scheint der Fortschritt anzuhalten und die Netzwerkaktivität wird ebenfalls gestoppt. Nachdem Sie einige Minuten gewartet haben, stellen Sie fest, dass der Cocoapod das Repo überprüft und extrahiert und die Gesamtgröße auf 853 MB erhöht.

Anmerkungen: Ich mache es am 23. Oktober 2016.

Tek Yin
quelle
1

Ich hatte das gleiche Problem, aber es funktioniert für. Ich habe den Pod-Installationsbefehl vor 3 Stunden ausgeführt, danach wurde aktualisiert, was ich will. Sie müssen nur den "Aktivitätsmonitor" weiter verfolgen. Sie können deren "git remote https" oder "Git" auf der Registerkarte "Festplatte" sehen. Es wird ungefähr 330 MB herunterladen, dann wird 1 GB angezeigt und nach einigen Minuten wird die Installation gestartet. Es ist nicht erforderlich, einen zusätzlichen Befehl auszuführen.

Hinweis: Während des Herunterladens Ihres MAC muss der Modus kontinuierlich aktiv sein. Wenn Ihr System in den Ruhemodus wechselt, stoppt die CPU den Prozess und es wird eine Fehlermeldung wie "Manuelles Hinzufügen" angezeigt.

Rohit Magdum
quelle
1

Ab Cocoapods 1.7.2 können Sie die CDN anstelle von Github verwenden. Es ist blitzschnell und es wird nicht hängen. :) Die CDN ist ab Cocopods 1.8.0 Standard.

So verwenden Sie die CDN-Quelle in Ihrer Poddatei:

Wenn Sie keine privaten Daten haben:

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

Wenn Sie private Spezifikationen haben:

source 'https://github.com/artsy/Specs.git'
- source 'https://github.com/CocoaPods/Specs.git'
+ source 'https://cdn.cocoapods.org/'

Wenn Sie dies tun, wird Ihr Podfile.lock beschädigt, sodass Sie wahrscheinlich ein Pod-Update ausführen müssen, um die Änderungen zu sehen (seien Sie vorsichtig, dies kann auch Ihre Pods aktualisieren).

Wenn Sie ein CI-Setup haben, wird empfohlen, das neue Repo-Verzeichnis zwischenzuspeichern, da es sehr klein ist und noch mehr Zeit sparen würde. Mit 1.7.2 sollte es sich unter ~ / .cocoapods / repos / cocoapods- befinden (ja, mit einem -), aber wir versuchen, die Benennung in einer kommenden Version zu verbessern.

Mehr Info:

Wille
quelle
1

Keine der oben genannten Lösungen funktionierte für mich. Ich musste Coacoapods deinstallieren und dann eine bestimmte Version installieren, bevor alles für mich funktionierte

sudo gem uninstall cocoapods

dann

sudo gem install cocoapods -v 1.7.5

jetzt zeigt sogar ausführlich das Fortschreiten

$ pod setup --verbose

Setting up CocoaPods master repo

Cloning spec repo `master` from `https://github.com/CocoaPods/Specs.git` (branch `master`)
  $ /usr/bin/git clone https://github.com/CocoaPods/Specs.git --progress -- master
  Cloning into 'master'...
  remote: Enumerating objects: 295, done.        
  remote: Counting objects: 100% (295/295), done.        
  remote: Compressing objects: 100% (283/283), done.        
  Receiving objects:  20% (744493/3722462), 132.93 MiB | 567.00 KiB/s   
Bernard 'Beta Berlin' Parah
quelle
0

Einfach das Master Repo einrichten, war gespannt, dass wir einen Download-Fortschritt haben, siehe Screenshot;)

Die Veröffentlichung von CocoaPods 1.2.0(28. Januar) behebt dieses Problem, danke an alle Mitwirkenden und Danielle Tomlinson für diese Veröffentlichung.


Geben Sie hier die Bildbeschreibung ein

AamirR
quelle
300 Megs ist "fest"? Sie müssen sich NPM für einige Ideen ansehen.
Jared Chmielecki
@JaredChmielecki als OP, ich hatte das gleiche Problem mit der alten CocoaPods-Version (während der Installationsmassage bleibt immer "CocoaPods Master Repo einrichten"), jetzt haben wir einen Download-Fortschritt, damit wir verstehen, dass hinter den Kulissen ein Download läuft;) I.
Ich
0

Kakaofrüchte - Wartezeiten auf 10% reduzieren (unter Mac OS):

1- Geben Sie pod setupIhren Projektordner (zuerst müssen Sie sich im Projektordner befinden) über das Terminal in Mac OS ein.

2- CTRL+zum anzuhalten, nachdem das Hauptverzeichnis (Ordner) erstellt wurde [Sie können es in Ihrem Cocoa Pods-Ordner sehen: ~ / .cocoapods / repos]

  1. Laden Sie .zip von herunter 

    https://github.com/CocoaPods/Specs

     Hauptzweig (seine 301 MB), extrahieren Sie es. Es dauert ca. 5-10 Minuten

4.Kopieren Sie den Inhalt nach  ~/.cocoapods/repos(jetzt müssen Sie hier nur noch den Inhalt in den Master-Ordner kopieren, stellen Sie also sicher, dass der Master-Ordner bereits mit dem Befehl pod setup erstellt wurde).

5- Sobald Sie es kopiert haben (oder ich sollte sagen, verschieben, ziehen und ablegen, da das Kopieren ewig dauern wird, da es sehr groß ist), können Sie pod install --no-repo-update 6- Ihre Pods in der Pod-Datei werden jetzt installiert. Hier ist ein Screenshot Geben Sie hier die Bildbeschreibung ein

Rakesh
quelle
0

Ich habe eine alternative Lösung, die ich derzeit verwende. Durch Ändern der Repository-URL in Podfile in:

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

- source 'https://github.com/CocoaPods/Specs.git'
+ source 'https://cdn.cocoapods.org/'
Dary
quelle
-1

pod setupfunktioniert und sollte bei fester Verbindung nur 10 Minuten dauern. Nach diesem Lauf: pod install --verboseund Sie sollten alle Kommentare sehen, die Sie normalerweise sehen würden, wenn Sie einen Abhängigkeitsmanager ausführen.

hoffentlich hilft das

Jesse C.
quelle