ruby gem ruby-2.0

Desinstalando todas las gemas Ruby 2.0.0



ruby-2.0 (4)

Escribí un guión en rubí para eliminar todas las gemas no predeterminadas.

https://gist.github.com/nixpulvis/5042764

Esto es necesario ahora porque a diferencia de antes 2.0.0 algunas gemas están etiquetadas como "predeterminadas" con la instalación de ruby, y no se pueden desinstalar con gem uninstall . Esto hace que los métodos anteriormente populares para eliminar todas las gemas no funcionen.

Para referencia aquí lo es.
gem list | cut -d" " -f1 | xargs gem uninstall

Parece que ruby ​​2.0.0 ha agregado gemas "predeterminadas" a la mezcla y las hace no removibles mediante gem uninstall.

¿Cómo puedes eliminar todas las gemas no predeterminadas?


Primero, ve al directorio gems Like ../ruby/2.0.0-p195/lib/ruby/gems/2.0.0/specifications
Encontrarás un directorio llamado default , que incluye todas las gemas predeterminadas incluidas con ruby ​​2.0

Mueva todos los * .gemspec almacenados en el directorio predeterminado al directorio de especificaciones y elimine el directorio predeterminado vacío.

Entonces puedes hacer lo que quieras como en los viejos tiempos :-)


Todavía no he encontrado una mejor respuesta que excluir las gemas "predeterminadas":

/usr/local/bin/gem list --no-versions | / grep -v -E "(bigdecimal|io-console|json|minitest|psych|rake|rdoc|test-unit)" | / xargs --no-run-if-empty /usr/local/bin/gem uninstall --executables --user-install --all --force


Usé este guión de una línea.

for i in `gem list --no-versions`; do gem uninstall -aIx $i; done

Ignora los errores de gema predeterminados y simplemente continúa. Simple y evidente.