RVM: Deinstallieren aller Edelsteine ​​eines Gemset


136

Ich habe globale Edelsteine ​​und verschiedene Edelsteine. Ich möchte alle Edelsteine ​​eines Edelsteinsets entfernen. Gibt es eine Möglichkeit, dies zu tun, außer das Gemset zu deinstallieren?

Antworten:


256

Verwenden Sie den gemset emptyBefehl:

rvm gemset empty mygems

8
Sie müssen das Gemset angeben, das Sie leeren möchten. Es reicht nicht aus, nur "rvm use [gemset_name]". Sie müssen "rvm gemset empty [gemset_name]".
Refaelos

Ich nehme an, wenn Sie viele Edelsteine ​​haben, kann es eine Weile dauern, sie alle zu deinstallieren.
Andy Lindeman

14
Übrigens kann ich gerade rennen rvm gemset emptyund es löscht das aktuelle Gemset.
Ibrahim

17

Dieser Befehl entfernt alle in 1-Schritt lokal installierten Ruby-Edelsteine. Funktioniert gut in Ubuntu 10.10

gem list | cut -d" " -f1 | xargs gem uninstall -aIx

PS - Entfernt alle lokalen Edelsteine. Verwenden Sie sudo entsprechend.


2
gem list --no-versions | xargs gem uninstall -aIx
Gem

12

rvm gemset empty <gemset name>

Dadurch werden alle Edelsteine ​​aus Ihrem erwähnten Edelsteinset entfernt.


12

Sie können auch verwenden rvm --force gemset empty


4

rvm gemset empty <gemset> funktioniert, aber nur, wenn Sie einen Gemset-Namen angeben.

Wenn Sie das Standard- Gemset leeren möchten, müssen Sie eine leere Zeichenfolge für den Gemset-Namen übergeben.

rvm gemset empty mygems ""


3

Ist das Entfernen aller Edelsteine ​​aus einem Gemset nicht im Wesentlichen der gleiche Vorgang wie das Löschen eines Gemset und das anschließende Hinzufügen? Warum nicht einfach so machen:

$ rvm gemset mygemset
$ rvm gemset delete mygemset
$ rvm gemset create mygemset

Ja, im Wesentlichen ist es das gleiche. Aber ich habe mich gefragt, ob es eine Möglichkeit gibt, dies zu tun, ohne das Gemset zu löschen. Wenn Sie ein Gemset löschen, werden die Gems auch entfernt oder in einem Cache gespeichert?
Nerian

1
Ich bin mir ziemlich sicher, dass sie vollständig entfernt wurden. Zum Beispiel habe ich ein Gemset namens jruby-1.5.6@radiant. Alle Edelsteine ​​befinden sich hier : /Users/dparoulek/.rvm/gems/jruby-1.5.6@radiant. Wenn ich das tue rvm gemset radiant, warnt es Sie, sich zu vergewissern, und löscht dann das gesamte /Users/dparoulek/.rvm/gems/jruby-1.5.6@radiantVerzeichnis.
Upgradingdave

Das wäre ungefähr das Gleiche, denke ich. Ich suchte nach einer Alternative, weil ich alle Edelsteine ​​aus dem globalen Gemset entfernen wollte, um zu verhindern, dass neue Edelsteine ​​die Edelsteine ​​aus dem globalen Gemset "erben".
Moiz Raja

2

Dies ist der sicherste Weg, um alle Edelsteine ​​eines Gemset zu deinstallieren

Schritt 1

Wenn Ihre Edelsteinversion kleiner als 2.1 ist.

gem update --system

gem --version

Schritt 2

gem uninstall --all

Verweise

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.