Wie installiere und verwende ich verschiedene Versionen von Ruby?

18858
Michael

Ich lerne Rails aus verschiedenen Büchern, die unterschiedliche Versionen von Rubin und Rails verwenden. Momentan habe ich auf meinem Mac OS X Snow Leopard (in /usr/bin) Ruby 1.87 installiert, muss aber auch Ruby 1.9 für eine andere Rails-Anwendung verwenden.

Kann mir jemand sagen, wie das funktioniert? Ich bin neu in diesem Bereich, daher würden wir uns über möglichst viele Anweisungen freuen.

9

2 Antworten auf die Frage

9
slhck

Es gibt zwei "Ruby-Versionsmanager", aus denen Sie wählen können:

Diese wurden entwickelt, um mehrere Versionen von Ruby auf demselben System zu halten. Sobald Sie sie installiert und Ihre eigene Ruby-Version installiert haben, machen Sie sich nicht mit Ruby und seinen Edelsteinen des Systems aus, was der größte Vorteil ist.

Welches soll ich nehmen?

Beide machen dasselbe, folgen aber unterschiedlichen Philosophien; rbenvversucht mit optionalen Plugins leichter zu sein, während RVM bei der Installation von Rubies und dem Behalten verschiedener Gemsets umfassender ist. Die Wahl liegt also bei Ihnen.

Ich würde es persönlich rbenvfür seine Einfachheit empfehlen . Ich benutze es seit Jahren und es hat immer gut funktioniert. Früher hätte ich RVM empfohlen (und eine frühere Version dieser Antwort hat es tatsächlich erwähnt), aber ich glaube, dass es schwieriger ist, darauf einzugehen.

Wie installiere ich sie?

Wenn sie wählen rbenv:

  • Folgen Sie den Installationsanweisungen
  • Installieren ruby-build
  • Run rbenv install x.x.xwo x.x.xist die Version (um rbenv install --listherauszufinden, welche verfügbar sind)
  • Starten Sie rbenv global x.x.x, um Ihre globale Ruby-Version zu ändern

Wenn Sie sich für RVM entscheiden:

  • Verwenden Sie die sichere Installationsmethode
  • Lesen Sie die Installationsanweisungen - wahrscheinlich möchten Sie die Einzelbenutzerkonfiguration
  • Verwenden Sie rvm list knowndiese Option rvm install x.x.x, um die verfügbaren Rubies aufzulisten, und führen Sie sie dann aus, um eine bestimmte Version zu installieren.
  • Verwenden rvm use x.x.x --defaultSie diese Option, um Ihren Standard-Ruby zu ändern
Siehe auch [rbenv] (https://github.com/sstephenson/rbenv). grawity vor 12 Jahren 1
@ grawity Warum keine weitere Antwort posten? Gut, Alternativen zu haben, habe sich noch nicht wirklich mit `rbenv` beschäftigt. slhck vor 12 Jahren 0
Vielen Dank, hilft es auch, zwischen den Rails-Versionen zu wechseln? Ich verwende verschiedene Bücher, beschäftige 3.05 (denke ich) und 3.1 und es verursacht Probleme ... Michael vor 12 Jahren 0
Ich habe die Installationszeile ausprobiert, die Sie geschrieben haben (und die sich auch auf der Rvm-Site befindet) und eine Fehlermeldung erhalten: bash: Zeile 152: git: Befehl nicht gefunden Bash: Zeile 154: git: Befehl nicht gefunden Michael vor 12 Jahren 0
Ah, du brauchst natürlich "git". Entschuldigung, das habe ich vergessen. Sie können Git mit dem [OS X-Installationsprogramm] (http://code.google.com/p/git-osx-installer/downloads/list) installieren (wählen Sie oben einfach die neueste Version aus). slhck vor 12 Jahren 0
Und ja, Rails ist im Grunde nur ein Juwel (zusammen mit anderen), so dass Sie es mit [Named Gem Sets] (http://beginrescueend.com/gemsets/basics/) wechseln können, wie im RVM-Handbuch beschrieben für den Rails-Fall. @Michael slhck vor 12 Jahren 0
das ist komisch, die Zusagen erscheinen und verschwinden. Ich dachte, du hattest hier einen Kommentar, der mit dem Git-Installer verbunden war ... Michael vor 12 Jahren 0
Danke vielmals. Git kommt mit einer Datei "git für Nicht-Terminal-Programme einrichten". Da ist ein bisschen Code drin ... sollte ich ihn irgendwo ablegen? Michael vor 12 Jahren 0
@Michael Siehe dazu den Teil in `README`. Sie brauchen es nicht, aber es tut nicht weh, es zu haben. Öffnen Sie einfach diese Datei mit einem Terminal. Wenn es zu kompliziert ist, überspringen Sie einfach diesen Teil. slhck vor 12 Jahren 0
Es scheint, dass der Link zu RVM aktualisiert wurde: https://rvm.io/ Jacob Ewald vor 8 Jahren 0
5
Michael Trojanek

Ich denke, dass Rbenv zumindest eine eigene Antwort verdient.

Es gibt einen ständigen Kampf zwischen Fans von Rbenv und denen von RVM, aber ich persönlich mag Rbenv viel mehr. Wie Sam Stephenson (der Autor) angibt, befasste sich rbenv ausschließlich mit dem Wechseln der Ruby-Versionen (im Gegensatz zu RVM, das noch viel mehr tut).

Unter OS X ist es besonders einfach, es auszuprobieren. Folgen Sie einfach den hervorragenden Installationsanweisungen auf der Github-Seite (wenn Sie Homebrew installiert haben, ist es im Grunde nur ein brew install rbenv ruby-build).

Was das Wechseln der Rails-Versionen betrifft, habe ich einmal einen Artikel darüber geschrieben, was mich für Sie interessieren könnte.

[Hier eine kurze Beschreibung] (https://github.com/sstephenson/rbenv/wiki/Why-rbenv%3F) des Autors von rbenv zu den wichtigsten Unterschieden zu RVM und den Gründen für die Wahl von rbenv. Die Einfachheit von Rbenv war für mich der Hauptgrund, von RVM abzuwandern. Die Verwaltung anwendungsspezifischer Gems wird von IMO besser mit Bundler durchgeführt - Sie benötigen dafür keinen Ruby-Versionsmanager. Jochem Schulenklopper vor 8 Jahren 1
Genau - das Verwalten von Sets anwendungsspezifischer Edelsteine ​​ist [Bundlers Job] (http://www.relativkreativ.at/articles/managing-multiple-rails-versions). Ich war noch nie ein Fan von an Versionsmanager gebundenen Gemsets. Michael Trojanek vor 8 Jahren 0