Ich habe ein Arbeitsprojekt, das seit einigen Wochen eine Pod-Datei verwendet. Als ich erfuhr, dass einige meiner Pods aktualisiert wurden, habe ich versucht, die Pod-Installation durchzuführen, und diesen seltsamen Fehler erhalten
Analyzing dependencies
[!] Pod::Executable pull
Updating 1337455..e9f6e93
error: The following untracked working tree files would be overwritten by merge:
AeroGear-Push/0.7.0/AeroGear-Push.podspec
AeroGear/1.2.0/AeroGear.podspec
BrynKit/1.3.0/BrynKit.podspec
BrynKit/1.3.1/BrynKit.podspec
CSURITemplate/0.3/CSURITemplate.podspec
EXiLE/1.0.2/EXiLE.podspec
FlurrySDK/4.2.3/FlurrySDK.podspec
FoundationExtension/0.39.1/FoundationExtension.podspec
FoundationExtension/0.39/FoundationExtension.podspec
GCDObjects/0.0.1/GCDObjects.podspec
HTAutocompleteTextField/1.2.1/HTAutocompleteTextField.podspec
HTAutocompleteTextField/1.2.2/HTAutocompleteTextField.podspec
HTAutocompleteTextField/1.2/HTAutocompleteTextField.podspec
IDMPhotoBrowser/1.1.2/IDMPhotoBrowser.podspec
Igor/0.5.0/Igor.podspec
KFOpenWeatherMapAPI/0.2.0/KFOpenWeatherMapAPI.podspec
NGSegmentedViewController/0.1.1/NGSegmentedViewController.podspec
PPiFlatSegmentedControl/1.3/PPiFlatSegmentedControl.podspec
PiwikTracker/2.0.0/PiwikTracker.podspec
SDWebImage/3.4/SDWebImage.podspec
libwbxml/0.11.2/libwbxml.podspec
wbxml/0.0.1/wbxml.podspec
Please move or remove them before you can merge.
Aborting
In einem anderen Beitrag wurde vorgeschlagen, die Befehlszeile 'rm -rf ~ / .cocoapods' zu verwenden. Dies führte jedoch dazu, dass meine Cocoapods nicht mehr für alle Projekte zusammenarbeiten. Für jedes Projekt, für das ich eine Pod-Installation versuche, wird die Spezifikation 'Keine Spezifikation gefunden ..' Error
[!] Es konnte keine Spezifikation für gefunden werden
CorePlot (= 1.3)
.
Pods/
Verzeichnis gelöscht hatte .Antworten:
Wenn Sie am oder nach dem 30. Januar 2014 hier gelandet sind, gibt es eine Unterbrechung der CocoaPods, die dies verursacht. Bitte lesen Sie den entsprechenden Blog-Beitrag hier: http://blog.cocoapods.org/Repairing-Our-Broken-Specs-Repository/
oder tun:
quelle
Ich habe es selbst gelöst. Der Trick bestand darin
$sudo rm -rf ~/.cocoapods
, das Cocoapods Master Repo zu reinigen und dannpod install
ohne Probleme zu arbeiten.Ich hoffe, dies hilft anderen Menschen, die auf dieses Problem gestoßen sind
quelle
sudo
dafür.Der einzeilige Befehl für 100% Totarbeit lautet:
sudo rm -rf ~/.cocoapods && pod setup && pod install
Ich habe das Problem auf GitHub Traker erstellt: # 2185
Und die offizielle Antwort lautet:
quelle
Wenn Sie ein sauberes Master Spec Repo benötigen, können Sie es versuchen
oder wenn Sie CocoaPods 0.23+ verwenden, verwenden Sie
~/.cocoapods/repos/master
.quelle
git reset --hard
des Root-Repos hat die Änderungen, die an einem der untergeordneten Repos vorgenommen wurden, nicht zurückgesetzt. Am Ende habe ich nur mein.cocoapods
Verzeichnis entfernt und von vorne angefangen, obwohl nicht jeder in der Lage wäre, dies zu tun.git fetch origin
(2)git clean -f
(3)git reset --hard origin/master
Sie müssen alle lokalen Kopien des Specs-Repositorys manuell löschen und die neue Version des Specs-Repositorys erneut klonen. Sie können dies mit den folgenden Befehlen tun:
$ sudo rm -fr ~/.cocoapods/repos/master $ pod setup
quelle
Wenn meine Projekte groß werden und ich eine große Pod-Datei habe, stoße ich ziemlich oft auf dieses Problem.
Meine Lösung lautet wie folgt:
quelle
Sie müssen Berechtigungen und Dateibesitzer korrigieren
quelle
Wow, das war ein echter Schmerz und jeder scheint eine andere Lösung zu haben. Für mich funktionierte diese Lösung bei mehreren Gelegenheiten auf mehreren Maschinen / Umgebungen:
Anscheinend gibt es einen Fehler
psych
, der das Problem verursacht.Auf dem CococaPods-Repo wird ein langes Gespräch über das Problem und dieses Update geführt.
quelle
Nur um meine eigene Lösung für dieses Problem zu teilen:
Da dies ein Git-Problem ist, können Sie es mit einfachen Git-Befehlen beheben (siehe Beitrag von @ AdamSharp). Was für mich funktionierte, lief
git clean -d -f
in
~/.cocoapods/repos/master
. Dadurch werden alle nicht verfolgten Dateien und Verzeichnisse rekursiv aus dem Repo entfernt. Ich ermutige Sie zu rennen:git clean -d -f --dry-run
Bevor Sie tatsächlich etwas ausführen, können Sie sehen, was es tun würde. Sollte es Ihr CocoaPods Master Repo beschädigen, löschen Sie es einfach
~/.cocoapods/repos/master
und führen Sie es auspod repo update
.quelle
Sie können es so versuchen. pod spec lint --sources = ' https://git.oschina.net/yourname/jqcpodspec,https://github.com/CocoaPods/Specs ' --allow-warnings --use-library
Wenn Ihre Spezifikation die Validierung besteht, drücken Sie das Pod-Repo auf JQCPodSpec FMCommonModelLib.podspec --sources = ' https://git.oschina.net/yourname/jqcpodspec,https://github.com/CocoaPods/Specs ' --allow-warnings --use-Bibliotheken
quelle