我使用RVM(Ruby Version Manager)为我的每个Rails项目指定一个Ruby版本和一组gems.

我有一个.rvmrc文件,每当我进入项目目录时,它会自动 Select Ruby版本和gemset.

安装RVM 1.19.0后,我收到一条消息

你使用的是.rvmrc,它需要信任,速度较慢,而且

我应该继续使用.rvmrc文件还是切换到.ruby-version文件?哪一个是最优的?后果是什么?

推荐答案

如果您的.rvmrc文件包含自定义shell 代码,请继续使用.rvmrc,因为它允许您包含任何shell 代码.

如果你的唯一目标是切换Ruby版本,那么使用.ruby-version,这是由其他Ruby版本切换器支持的,比如rbenvchruby.这个文件也不需要信任,因为它只是Ruby版本的名称,不会以任何方式执行.

如果使用.ruby-version,可以在文件中包含@gemset,但这与其他交换机不兼容.为了保持兼容性,在单独的文件.ruby-gemset中使用gemset名称,其他工具(it works only together with 100)会忽略该文件.

例如,如果你有一个简单的.rvmrc:

rvm use 1.9.3@my-app

它可以转换为.ruby-version:

1.9.3

.ruby-gemset:

my-app

确保删除.rvmrc文件,因为它优先于任何其他项目配置文件:

rm .rvmrc

Ruby-on-rails相关问答推荐

未捕获语法错误:try 编辑TRIX时,请求的模块未在Rails 7.1中提供名为默认的导出(在youtube.js:1:8)

无法安装Ruby错误运行';__rvm_make-J4';,

DateTime的最小数据提交格式

RSpec系统测试无法从工厂访问新创建的记录

Rails 7.1,登录到STDOUT和LOG/Production.log

将参数传递给视图中的嵌入操作时遇到问题

一对多关联 counter_cache 在 Rails 中无法正确重新加载

CanCanCan、Pagy 和 Meil​​iSearch,如何组合这 3 个 gem?

我需要在我的 Rails 7 应用程序中保留 app/assets/config/manifest.js 吗?

复制我的活动时,活动描述没有复制过来

如何验证 Rails 中的多态字段关联?

设计 token_authenticable 已弃用,有什么替代方案?

在 Rails 的 ActiveRecord 中,touch 有什么用?

Rails 发现获取 ActiveRecord::RecordNotFound

如何在两个日期之间生成随机日期和时间?

rmagick 和 OS X Lion

在 Rails 中复制模型实例

连接表的最佳 SQL 索引

在rails中带有内部文本或html的link_to image_tag

以最Ruby 风格计算 ActiveSupport:TimeWithZone 天数的差异?