Saya memiliki beberapa versi permata Ruby:
$ gem list
rjb (1.3.4, 1.3.3, 1.1.9)
Bagaimana saya bisa menghapus versi lama tetapi tetap terbaru?
# remove all old versions of the gem
gem cleanup rjb
# choose which ones you want to remove
gem uninstall rjb
# remove version 1.1.9 only
gem uninstall rjb --version 1.1.9
# remove all versions less than 1.3.4
gem uninstall rjb --version '<1.3.4'
Untuk menghapus versi lama dari semua permata yang diinstal, 2 perintah berikut berguna:
gem cleanup --dryrun
Perintah di atas akan mempratinjau permata apa yang akan dihapus.
gem cleanup
Perintah di atas sebenarnya akan menghapusnya.
Coba sesuatu seperti
gem uninstall rjb --version 1.3.4
.sumber
Cara untuk membersihkan versi permata yang lama.
Jika Anda hanya ingin melihat daftar apa yang akan dihapus, Anda dapat menggunakan:
Anda juga dapat membersihkan hanya permata tertentu dengan menentukan namanya:
untuk menghapus versi spesifik seperti 1.1.9 saja
Jika Anda masih menghadapi beberapa pengecualian untuk memasang permata, seperti:
permata tidak valid: paket rusak, pengecualian saat memverifikasi: metode `ukuran 'tidak terdefinisi untuk nihil: NilClass (NoMethodError) di /home/rails/.rvm/gems/ruby-2.1.1@project/cache/nokogiri-1.6.6.2. permata
itu, Anda dapat menghapusnya dari cache:
Untuk lebih detail:
http://blog.grepruby.com/2015/04/way-to-clean-up-gem-or-remove-old.html
sumber
sudo
gem cleanup
menggunakan perintah sistem. Permata yang diinstal hanyalah direktori dalam sistem file. Jika Anda ingin menghapus batch, gunakanrm -R
.gem environment
dan perhatikan nilaiGEM PATHS
cd <your-gem-paths>/gems
ls -1 |grep rjb- |xargs rm -R
sumber
Anda mungkin perlu mengatur
GEM_HOME
agar pembersihan berfungsi. Anda dapat memeriksa jalur apa yang ada untuk gemfiles dengan menjalankan:Perhatikan bagian GEM PATHS.
Dalam kasus saya, misalnya, dengan permata yang dipasang di rumah pengguna saya:
sumber