【问题标题】:Ability to switch between Ruby on Rails versions, one from rbenv, other from rvm能够在 Ruby on Rails 版本之间切换,一个来自 rbenv,另一个来自 rvm
【发布时间】:2018-05-31 21:01:54
【问题描述】:

我首先在 Linux CentOS 7 上使用 rbenv 安装 ruby​​ 2.2 版和 Rails 4.2 版,然后使用 rvm 安装 ruby​​ 2.4 版和 rails 5.2 版。有没有办法在这些之间轻松切换,还是必须使用相同的方法安装它们才能工作?

【问题讨论】:

    标签: ruby-on-rails linux rvm centos7 rbenv


    【解决方案1】:

    你可以更好地使用 rvm。 Rvm 是使用命令在多个版本之间切换的更好工具

    rvm use ruby-2.5.1rvm use 2.5.1

    列出所有 rvm 只需使用

    rvm 列表

    在 rvm 中,您可以很好地管理版本,无需 rbenv。

    【讨论】:

      【解决方案2】:

      我更喜欢 RVM,版本之间切换很容易,你也可以轻松地为那个 ruby​​ 使用多个 rails 版本

      安装 rvm,安装 ruby​​ 并使用 rvm use 2.4@rails_5_2 --create 创建 gemset 将创建名称为 rails_5_2 的 gemset

      用于在版本之间切换。我在我的项目中使用.ruby-version.ruby-gemset 文件,所以我不需要一直指定版本

      在 .ruby-version 文件中写入 ruby​​ 版本

      2.4

      并在 ruby​​-gemset 中写入 gemset 名称

      rails_5_2

      因此,无论何时运行项目,它都会从那里获取 ruby​​ 和 rails 版本

      您可以手动创建这两个文件,也可以在终端中从您的应用程序目录运行此命令,这将创建这两个文件

      rvm --ruby-version use 2.4@rails_5_2

      【讨论】:

      • 谢谢。您会将这些 ruby​​ 版本和 gemset 文件放在哪里?
      • 在项目文件夹中,我的意思是在您的应用程序文件夹中,包含 gitignore 和其他文件
      • 抱歉,我是新手。所以你只在名为“app”的文件夹中制作这些文件,而不是在其中的子文件夹中?另外,这些是什么文件类型,你只要在里面放一行代码?
      • 没问题,不在 rails app 文件夹中,只需转到您的应用程序(您的项目,如 my_app)文件夹并创建这两个文件,是的,只有一行,您的 ruby​​ 版本和 gemset 名称,这是文本文件
      【解决方案3】:

      我通过删除 RVM 并使用 rbenv 安装较新版本来解决此问题。使用相同的方法安装两个版本可以在需要时轻松切换。垫片自动为每个项目分别使用正确的 Rails 版本。据我所知,Rails 版本与您开始项目时使用的任何版本都是锁定的。您可以使用以下命令切换每个项目的 Ruby 版本:

      # rbenv local 2.4.1
      

      我之所以选择 rbenv 而不是 rvm,是因为我阅读了几篇人们称赞 rbenv 的轻量级方法和优于 rvm 的易用性的文章。

      注意:“#”字符是 Linux CentOS 7 中命令行的开头,而不是您输入的字符。

      编辑:不过,谢谢你们的建议。它让我更多地研究使用 rbenv 与 rvm。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-04-24
        • 1970-01-01
        • 1970-01-01
        • 2015-06-01
        • 2014-11-25
        • 2018-03-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多