代码之家  ›  专栏  ›  技术社区  ›  Andrew Vit

你登记你的RVMRC文件了吗?

  •  28
  • Andrew Vit  · 技术社区  · 15 年前

    Ruby版本管理器允许我们使用 .rvmrc 在每个项目中设置要加载哪个Ruby版本和gem。是否应将此文件签入到源代码管理?或者这是否对其他开发人员的工作环境假设过多?

    2 回复  |  直到 14 年前
        1
  •  31
  •   mpapis    14 年前

    源代码管理主要是 再现性 :您是否能够根据您在SCM中存储的内容复制开发工作的版本?

    如果 .rvmrc 项目上的任何开发人员都需要文件才能工作(使用正确的工件),然后是的,您应该对其进行版本控制。

    如上所述 RVM Best Practices :

    2号-将您的RVMRC检查到源代码管理中。

    通过将上述的rvmrc检查到应用程序旁边的源代码管理中, 你要确保所有用户在使用RVM时都有一个一致的环境 .

    通过自动化gemeset安装等(例如,在rvm站点存储库或tedxperth存储库的rvmrc中查看rvmrc),您还可以使开始变得和更改目录一样简单。

    除此之外,还可以自动使部署设置特定于应用程序的环境。

    其他开发人员可以通过以下方式在他们的RVM上使用gemesets:

    echo rvm_ignore_gemsets_flag=1 >> ~/.rvmrc
    

    这将使它们始终使用默认的宝石。

        2
  •  11
  •   Paweł Gościcki Ywain    14 年前

    我真的建议不要保留 .rvmrc 在供应链管理中。两个具体原因:

    1. 如果使用gemes,则强制其他开发人员使用相同的gemest(而有些开发人员可能更喜欢将其所有的gemes都放在全局gemest中)。

    2. 您使其他开发人员很难在不同的Ruby版本上运行该项目。当然,在生产过程中可能会用到 1.9.2-p290 ,但是为什么不允许我在本地运行应用程序 1.9.3-p0 ?

    一般来说,它在每个开发人员身上实施了太多(与 database.yml 也不应保存在SCM中)。“生产运行”Ruby版本的项目自述文件中的一个注释就足够了。

    推荐文章