Tengo varias versiones de una gema de rubí:
$ gem list
rjb (1.3.4, 1.3.3, 1.1.9)
¿Cómo puedo eliminar versiones antiguas pero mantener la más reciente?
Tengo varias versiones de una gema de rubí:
$ gem list
rjb (1.3.4, 1.3.3, 1.1.9)
¿Cómo puedo eliminar versiones antiguas pero mantener la más reciente?
Respuestas:
# 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'
Para eliminar versiones anteriores de todas las gemas instaladas, son útiles los siguientes 2 comandos:
gem cleanup --dryrun
El comando anterior mostrará una vista previa de las gemas que se eliminarán.
gem cleanup
El comando anterior en realidad los eliminará.
Intenta algo como gem uninstall rjb --version 1.3.4
.
Manera de limpiar cualquier versión antigua de gemas.
sudo gem cleanup
Si solo desea ver una lista de lo que se eliminaría, puede usar:
sudo gem cleanup -d
También puede limpiar solo una gema específica especificando su nombre:
sudo gem cleanup gemname
para eliminar versiones específicas como 1.1.9 solamente
gem uninstall gemname --version 1.1.9
Si aún enfrenta alguna excepción para instalar gem, como:
gema no válida: el paquete está dañado, excepción al verificar: método 'tamaño' indefinido para nil: NilClass (NoMethodError) en /home/rails/.rvm/gems/ruby-2.1.1@project/cache/nokogiri-1.6.6.2. joya
el, puedes eliminarlo de la caché:
rm /home/rails/.rvm/gems/ruby-2.1.1@project/cache/nokogiri-1.6.6.2.gem
Para más detalles:
http://blog.grepruby.com/2015/04/way-to-clean-up-gem-or-remove-old.html
sudo
gem cleanup
usa comandos del sistema. Las gemas instaladas son solo directorios en el sistema de archivos. Si desea eliminar por lotes, use rm -R
.
gem environment
y tenga en cuenta el valor de GEM PATHS
cd <your-gem-paths>/gems
ls -1 |grep rjb- |xargs rm -R
Es posible que deba configurar GEM_HOME
la limpieza para que funcione. Puede verificar qué rutas existen para los archivos de gemas ejecutando:
gem env
Tome nota de la sección GEM PATHS.
En mi caso, por ejemplo, con gemas instaladas en mi casa de usuario:
export GEM_HOME="~/.gem/ruby/2.4.0"
gem cleanup