ruby-on-rails - 虚拟 ruby 开发环境

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

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

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

最佳答案

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

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

因此,基本上,通过正确设置 RVM 并在一台机器上安装 Ruby 安装,您已完成 90% 的工作,使其可用于多台机器。

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

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

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

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

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

关于ruby-on-rails - 虚拟 ruby 开发环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5369299/

相关文章:

ruby-on-rails - 在 Rails 中创建帐户时创建随机、唯一的 token

ruby-on-rails - Rails-在before_save中获取旧值

mysql - Rails/Active Record has_many 通过关联 - 获取记录

ruby - 查找数组中所有加起来等于指定值的值

c# - 什么是最小的 ASP.NET MVC 4 安装?

Linux 安装重新打包

ruby-on-rails - 为什么要在 Rails 中使用 config.assets.prefix ?

ruby-on-rails - 如何在 rails 中使用载波 'after the fact' 裁剪图像?

ruby-on-rails - 多轨服务器

configuration - 如何避免意外 'hg push' 而不是 'hg qpush' ?