【问题标题】:virtual ruby development environment虚拟红宝石开发环境
【发布时间】:2011-03-20 15:09:39
【问题描述】:

我主要在我的机器上进行 ruby​​ on rails 开发,但有时我最终会使用其他笔记本电脑进行 RoR 开发。如果有什么东西(也许是 shell?)基本上把我机器上安装的所有 gem 带到其他机器上而不留下任何足迹,那就太好了。它基本上是一个非常轻的虚拟机,没有操作系统的东西。

如果重要的话,我使用的是 Mac。理想情况下,我想将该虚拟环境保留在我的保管箱中,基本上当我使用其他机器时,我只需从保管箱中获取它并开始编码,而不必担心设置环境。

【问题讨论】:

    标签: ruby-on-rails ruby development-environment virtualization virtual-machine


    【解决方案1】:

    与 Jacob 的回答类似,我建议使用 RVM,但我会对其进行扩展。以下是一些集思广益的想法:

    RVM 将其沙箱存储在您的主目录~/.rvm。所有 Ruby 实例以及相关的 gem 都将存储在那里。这是对 Mac 中 ~/.bashrc 文件的简单添加,用于初始化 RVM,以便在您登录帐户时被 shell 识别。从命令行中删除 RVM 沙箱也是一个简单的rm -rf ~/.rvm,然后从~/.bashrc 中删除该行。

    因此,基本上,通过正确设置 RVM 并将 Ruby 安装在一台机器上,您就可以将 90% 的方法用于多台机器。

    我很确定 Ruby 可以在没有任何依赖关系的情况下安装在使用 RVM 的当前 Mac OS 上,但是有几个库可以改善体验。在安装 RVM 之后,但在安装任何 Ruby 之前,运行 rvm notes。这将告诉你还有什么要安装的。您将需要当前的 XCode 来编译 Ruby,但只能在您进行编译的机器上。安装后,您应该能够通过复制 ~/.rvm 目录将 RVM 控制的 Ruby 移动到其他 Mac 上。因此,您不仅会拥有 gem,还可以拥有一个或多个特定版本的 Ruby,以及相关的 gem,因此您的回归测试也可以工作。

    如果您使用MacVim,您可以将其安装在~/bin 并拥有GUI 版本。我没有尝试从那里运行它,但它似乎可以工作。您可能需要创建一个从 /Applications~/bin 中的别名的别名,以便双击。

    MacVim 带有一个名为mvim 的shell 脚本,可以从命令行启动它。我有一堆软链接可供我从命令行以各种方式调用它:gvim,以及像gvimdiffgview 这样的gvim 变体。您可以通过将~/bin 添加到您的PATH 并在该目录中本地创建指向MacVim 的mvim 的链接来执行相同的操作。

    您可以构建 vim 配置、vim 安装和 RVM 沙箱的 tarball,将其复制到另一台 Mac,展开它,将 ~/bin 添加到您的 PATH 并在 ~/.bashrc 中附加所需的 RVM 初始化行,打开一个新的命令行,并拥有您的编辑器和 Ruby 沙箱。

    这与我的 Mac 和 Linux 机器的设置方式略有不同。我没有尝试将所有内容捆绑在一起,但是,在具有相同操作系统版本的 Mac 上,它应该可以工作。

    【讨论】:

      【解决方案2】:

      考虑使用rvm 来管理不同的gem 配置。如果您愿意,您可以将 rvm 配置存储在您的保管箱中(而不是在 ~/.rvm 中,它们默认存放的位置),以便您的 gemsets 跨机器同步。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-07
        • 1970-01-01
        • 1970-01-01
        • 2019-08-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-22
        相关资源
        最近更新 更多