2015-01-24 1 views
7

Es gibt einige Antworten mit gem 'cocoapods', '0.33.1' oder gem 'pod', '0.33.1 sagenWie man Cocoapods (oder andere Gem) Version auf der Kommandozeile wechseln?

aber das funktioniert nicht.

ERROR: While executing gem ... (Gem::CommandLineError) Unknown command cocoapods,

In einem Projekt muss ich 0.33.1 verwenden, aber 0.34.4 in einem anderen. Wie wechsle ich die cocoapods-Version schnell auf der Kommandozeile? Ich möchte Gem nicht installieren oder deinstallieren.

Ich verwende rbenv mit Ruby Version 2.0.0p0. Verwenden Sie rbenv ist bevorzugt, aber ich kann nur dann zu rvm oder pure Ruby wechseln, wenn es keine anderen Optionen gibt.

Danke.

+0

Was ist das Problem der neueste Version in beiden Projekten mit der Verwendung? –

+0

Es bricht Dinge, wenn ich die 0.34.4 in einem Projekt verwende. Team Entscheidung, mit 0.33.1 zu bleiben. Dies kann in diesem Moment nicht geändert werden. –

+0

Ich bin sicher, dass das Problem, das Sie haben, gelöst werden könnte. Aber ignorieren Sie, dass Sie sehr vorsichtig sein sollten, alte Versionen von CocoaPods zu verwenden. Zu jeder Zeit kann die Spezifikations-Repo-Unterstützung für die alten Versionen entfernt werden, wodurch Sie einen fehlerhaften Build erhalten. –

Antwort

16

Sie können Folgendes verwenden, um verschiedene Versionen tun:

pod _0.34.4_ install 

oder

pod _0.34.1_ install 
7

Dies ist genau der Zweck der Bundler

In einem Projekt, geben Sie dies im Gemfile:

gem 'cocoapods', '0.33.1' 

zusammen mit allen anderen Edelsteinen .. und laufen bundle install sie zu installieren.

Es gibt einige andere Schritte, um sicherzustellen, dass Sie diese Edelsteine ​​aus bundler laden, würde ich diese Seite für die ganze Dokumentation lesen.

Rails-Projekte haben dies bereits für Sie eingerichtet, aber wenn dies ein einfaches altes Ruby-Projekt ist, müssen Sie es selbst verkabeln.

+0

gibt es kein Gemfile. Ich muss nur die Cocoapods-Version auf der Kommandozeile wechseln. –

+3

Ich empfehle, dass Sie dem Programm eine Gemfile und die relevanten Teile von Bundler hinzufügen. – DGM

+0

Dies sind IOS-Projekte, wir versuchen, keine Edelsteindatei im Projekt hinzuzufügen. Das sollte aber nicht für uns funktionieren. Ich gebe 1 auf, kann es aber nicht als Antwort akzeptieren. –

2

FYI verwende ich die folgende temporäre Lösung. Da ich rbenv verwende, installiere ich verschiedene Versionen von Cocoapoden unter verschiedenen Versionen von Ruby. Zum Beispiel

rbenv global 2.1.0 gem install cocoapods -v 0.34.4 rbenv global 2.0.0-p0 gem install cocoapods -v 0.33.1

Wenn ich auf verschiedenen Xcode-Projekten arbeiten, die andere Version von Cocoapods erfordert, schalte ich nur Ruby-Version auf der Fliege, und Cocoapods Version wird entsprechend umgeschaltet.

Wie ich bereits erwähnt habe, sind dies xCode-Projekte, und wir dürfen keine gemfile hinzufügen oder Juwel im Projektordner installieren. Das funktioniert also für mich.

Verwandte Themen