Quiero cambiar entre los rieles 2.3.10 como la gema "activa" para mi sistema operativo, para poder invocarla en la línea de comandos.
¿Es posible hacer esto? No estoy usando rvm. Quizás es hora de empezar.
Lo intenté gem install rails --version=2.3.10
, pero eso solo asegura que la versión de la gema esté instalada, no la coloca /usr/bin/rails
.
(Ya uso bundler para mis aplicaciones, pero no he necesitado ningún control preciso sobre las gemas a nivel del sistema operativo hasta ahora)
ruby-on-rails
ruby
rubygems
rvm
John Bachir
fuente
fuente
rackup _1.4.3_ --version
<br>Rack 1.1 (Release: 1.4)
Rack.version
yRack.release
github.com/rack/rack/blob/master/lib/rack.rb ). Intentegem install rack --version=1.3 && rackup _1.3.0_ --version
, se imprimiráRack 1.1 (Release: 1.3)
which rackup | xargs cat
Utilice RVM
RVM te permite administrar diferentes versiones de Ruby y Gems. Puede instalar una versión de ruby usando, por ejemplo
rvm install 1.9.2
Luego puede usarlo usando:
rvm use 1.9.2
Use gemas específicas por proyecto con gemas.
Si desea un mayor espacio de nombres, puede configurar conjuntos de gemas; directorios que contendrán gemas específicas para un proyecto específico.
entonces puedes usarlos así:
rvm use 1.9.2@myproject
Automatización
Para automatizar el proceso de cambio de gemas, coloca los archivos .ruby-version y .ruby-gemset en la raíz de tu proyecto. Pop la versión de Ruby y el nombre del conjunto de gemas que desea usar dentro de ellos y RVM seleccionará el conjunto de gemas correcto cuando ingrese al directorio de su proyecto.
Instalar gemas en su gema
Instale sus gemas en su conjunto de gemas de la manera habitual usando bundler si lo está usando:
o simplemente usando el viejo regular:
Las gemas irán en el conjunto de gemas correcto.
Alternativas RVM
También puede consultar rbenv, que hace un trabajo similar.
fuente
Puedes usar RVM
Luego, también puede usar Bundler , que administra bien las dependencias de gemas.
En tus
Gemfile
gem "rails", "2.3.10"
y en tu aplicación
require 'rubygems' require 'bundler/setup'
y tu estas listo.
fuente
bundle exec warble
EDITAR: Acabo de ver su mención RVM en la publicación. Definitivamente el camino a seguir.
Querrá instalar RVM : es un paquete increíble que le permitirá administrar diferentes Rubys y diferentes conjuntos de gemas en la misma máquina. Puede cambiar de un lado a otro con total facilidad.
Aquí está la guía de instalación: http://rvm.beginrescueend.com/rvm/install/
Una vez que tenga todo listo, puede ver todos los rubys instalados en la línea de comando con
rvm list
, y cambiar conrvm use ruby-head
, por ejemplo. RVM mantiene las gemas de cada rubí separadas, lo que debería ayudar con su pregunta.fuente