¿Es posible usar múltiples versiones de rieles usando rbenv (por ejemplo, 2.3 y 3.1)? Esto fue fácil con gemsets en rvm, pero me pregunto cuál es la mejor manera de hacerlo ahora que he cambiado a rbenv (también, estoy buscando una forma de hacerlo sin rbenv-gemset).¿Cómo se usan las versiones de rieles múltiples con rbenv?
Respuesta
no estoy seguro de si tienes una respuesta a esto, pero pensé que ofrecería lo que hice y pareció funcionar.
Una vez que tiene instalado rbenv, y lo usa para instalar una versión de ruby específica, puede instalar varias versiones de rieles para ese ruby.
PASO 1. Instalar cualquier versión (s) de los carriles que desee según la versión de rubí
% RBENV_VERSION=1.9.2-p290 rbenv exec gem install rails --version 3.0.11
Al utilizar el "RBENV_VERSION = 1.9.2-p290" prefijo en la línea de comandos, que está especificando con qué ruby rbenv debería preocuparse.
Luego, siguiendo con el comando "rbenv exec", puede instalar los rieles. Simplemente use el indicador de versión como en el ejemplo para especificar qué versión desea. No estoy seguro si puede instalar varias versiones en una sola toma, pero solo ejecuto este comando tantas veces como sea necesario para instalar cada versión que deseo.
Nota: Todo esto se gestionará dentro de su directorio rbenv, por lo que es perfectamente seguro y está contenido.
PASO 2. Cree un nuevo proyecto de rieles especificando la versión de rieles que desee.
% RBENV_VERSION=1.9.2-p290 rbenv exec rails _3.0.11_ new my_project
PASO 3. No se olvide de entrar en ese proyecto y establecer la versión local rbenv rubí.
% cd my_project
% rbenv local 1.9.2-p290
Ahora, si quieres eliminar este proyecto, que acaba de eliminar de forma normal.
Si desea eliminar/gestionar una versión carriles de gemas rbenv, puede utilizar los comandos regulares joya, justo prefijar su línea de comandos con:
% RBENV_VERSION=1.9.2-p290 rbenv exec gem {some command}
Y, por supuesto, puede eliminar una versión completa de rubí y todas sus cuñas, etc. que se manejan dentro de rbenv con bastante facilidad. Me gusta lo autónomo que es todo.
Espero que esto ayude.
Como referencia, esto es un buen paseo a través de al menos algunas de estas cosas:
gracias por esta respuesta, pero yo ¿No se puede simplemente crear un proyecto de rieles y especificar la versión de rieles dentro del proyecto y luego hacer la instalación del paquete? ¿Puedes explicarme cómo tu respuesta sería una mejor solución? No soy tan experimentado así que sería útil saberlo. gracias – Leahcim
por cierto, una vez que crea el proyecto con ese prefijo, ¿usa ese prefijo para cada comando que hace en el proyecto? prefix + bundle install? prefix + gem install {gem name}, etc. – Leahcim
No, no necesita seguir usando el prefijo. Mi respuesta aquí fue un poco superflua porque RVM es un completo administrador de paquetes (versión de ruby + rails), y estaba tratando de ilustrar una manera de hacer algo similar con rbenv, que a diferencia de RVM es principalmente un administrador de ruby. El OP preguntaba sobre el uso de versiones de rieles múltiples con rbenv, por lo que estaba describiendo cómo instalar una versión de rieles específica a una versión de ruby específica (de la cual puede instalar múltiples), y luego seleccionar cuál usar al crear un proyecto con ese ruby versión. Esto te daría algo similar a RVM. – Nathan
hay un plugin llamado rbenv rbenv-gemset que debe comportarse similar a la rvm gemset
-command pero desde rbenv Nunca fue mi intención trabajar así, no lo he intentado.
Normalmente administro versiones de Rails con Bundler como Nathan sugirió en los comentarios de una de las otras respuestas.Creo un Gemfile con mi versión rieles deseada, ejecute bundle install
, crear la aplicación Rails, deje que se reemplace el Gemfile y dejar que se haga cargo Bündler:
mkdir my-rails-app
cd my-rails-app
echo "source 'https://rubygems.org'" > Gemfile
echo "gem 'rails', '3.2.17'" >> Gemfile
bundle install
bundle exec rails new . --force --skip-bundle
bundle update
Si usted desea más detalles, escribí an article on my blog al respecto.
Espero que ayude!
que es un buen artículo. Gracias al paquete – onmyway133
que era la solución que estaba buscando +1 – Qchmqs
- 1. rbenv: Sobrevivir sin gemsets
- 2. ¿Cómo se usan varias versiones del mismo paquete R?
- 3. No se puede instalar RMagick con rbenv
- 4. Versiones de modelo de rieles con aprobación
- 5. ¿Los modelos de vista se usan en los rieles?
- 6. Las variantes se usan recursivamente?
- 7. ¿Cómo funcionan realmente RVM y rbenv?
- 8. ¿Cómo se usan las sesiones con Compojure/Ring?
- 9. will_paginate con múltiples modelos (rieles)
- 10. ¿Cómo se usan las matrices débiles?
- 11. ¿Cómo se mantienen múltiples versiones de bases de datos?
- 12. Vinculación con múltiples versiones de una biblioteca
- 13. ¿Cómo se usan las condiciones en las funciones de WiX?
- 14. Rieles: unirse con múltiples condiciones
- 15. ¿Usa versiones múltiples de rubygems con rvm?
- 16. Cómo implementar el backend de la API con múltiples versiones
- 17. Cargando múltiples bibliotecas compartidas con diferentes versiones
- 18. ¿Cómo funcionan las sesiones de PHP? (no "¿cómo se usan?")
- 19. ¿Cómo administrar múltiples gemas y versiones ruby con RVM?
- 20. ¿Cómo distribuir múltiples versiones de mi aplicación?
- 21. Orden de priorización cuando se usan archivos css múltiples contradictorios
- 22. Cómo usar múltiples versiones de GCC
- 23. migración de versiones de rieles menores
- 24. Rieles con múltiples retardos_trabajos: tablas de bloqueo
- 25. Rieles session_store dominios múltiples
- 26. ¿Cómo se usan las funciones de stl como for_each?
- 27. Rieles: ¿cómo se puede acceder a las variables de sesión usando múltiples controladores?
- 28. cómo probar múltiples navegadores (versiones) con selenio y junit
- 29. ¿Cómo se usan las fuentes incorporadas de gnuplot?
- 30. ¿Cómo se usan las clases de los archivos .jar?
Pregunta relacionada: http://stackoverflow.com/questions/9771172/rbenv-surviving-without-gemsets (Me perdí esta pregunta cuando le pregunté a la mía, tal vez por el error tipográfico rbvenv) –