RVM: Menghapus semua permata dari sebuah gemset

136

Saya memiliki permata global dan berbagai macam permata. Saya ingin menghapus semua permata dari sebuah gemet. Apakah ada cara untuk melakukannya, selain mencopot pemasangan gemet?

Nerian
sumber

Jawaban:

256

Gunakan gemset emptyperintah:

rvm gemset empty mygems
Andy Lindeman
sumber
8
Anda perlu menentukan gemet yang ingin Anda kosongkan. Tidaklah cukup hanya dengan "rvm use [gemset_name]". Anda perlu "rvm gemset empty [gemset_name]".
refaelos
Saya kira jika Anda memiliki banyak permata, perlu beberapa saat untuk menghapus semuanya.
Andy Lindeman
14
Kebetulan saat ini saya dapat menjalankan rvm gemset emptydan menghapus gemset saat ini.
Ibrahim
17

Perintah ini menghapus semua permata ruby ​​yang diinstal secara lokal dalam 1 langkah Bekerja dengan baik di Ubuntu 10.10

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

PS - menghapus semua permata lokal. Gunakan sudo sebagaimana mestinya.

Sulabh Jain
sumber
2
gem juga memiliki tanda --tidak ada versi, yang bagus: gem list --no-versions | xargs gem uninstall -aIx
trisweb
12

rvm gemset empty <gemset name>

Ini akan menghapus semua permata dari gemet yang Anda sebutkan.

Ramiz Raja
sumber
12

Anda juga bisa menggunakan rvm --force gemset empty

Matilda
sumber
4

rvm gemset empty <gemset> berfungsi, tetapi hanya jika Anda menentukan nama gemet.

Jika Anda ingin mengosongkan Gemset default , Anda harus memberikan string kosong untuk nama Gemset.

rvm gemset empty mygems ""

Craig Walker
sumber
3

Bukankah menghapus semua permata dari gemet pada dasarnya operasi yang sama seperti menghapus permata dan kemudian menambahkannya kembali? Mengapa tidak melakukan ini saja:

$ rvm gemset mygemset
$ rvm gemset delete mygemset
$ rvm gemset create mygemset
Upgradingdave
sumber
Ya, pada dasarnya sama saja. Tapi saya bertanya-tanya apakah ada cara untuk melakukan ini tanpa menghapus gemet. Saat Anda menghapus gemet, apakah permata juga ikut terhapus atau disimpan ke cache?
Nerian
1
Saya cukup yakin mereka benar-benar dihapus. Misalnya, saya memiliki gemet bernama jruby-1.5.6@radiant. Semua permata terletak di sini: /Users/dparoulek/.rvm/gems/jruby-1.5.6@radiant. Ketika saya melakukannya rvm gemset radiant, maka itu memperingatkan Anda untuk memastikan, dan kemudian menghapus seluruh /Users/dparoulek/.rvm/gems/jruby-1.5.6@radiantdirektori.
Upgradingdave
Kurasa ini hampir sama. Saya mencari alternatif karena saya ingin menghapus semua permata dari gemet global sehingga saya bisa menghentikan permata baru dari "mewarisi" permata dari gemet global.
Moiz Raja
2

Ini adalah cara teraman untuk menghapus semua permata dari sebuah gemet

Langkah 1

Jika versi permata Anda kurang dari 2.1.

gem update --system

gem --version

Langkah 2

gem uninstall --all

referensi

Mukesh Kumar Gupta
sumber