繁体   English   中英

使用rvmrc或ruby-version文件用RVM设置项目gemset?

[英]Use rvmrc or ruby-version file to set a project gemset with RVM?

我使用RVM( Ruby版本管理器)为每个Rails项目指定一个Ruby版本和一组gem。

我有一个.rvmrc文件自动选择一个Ruby版本和宝石每当我cd到项目目录。

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

你正在使用.rvmrc ,它需要信任,它比较慢并且与其他ruby管理器不兼容,你可以使用rvm rvmrc to [.]ruby-version切换到.ruby-version rvm rvmrc to [.]ruby-version或者用rvm rvmrc warning ignore /Users/userName/code/railsapps/rails-prelaunch-signup/.rvmrc忽略这个警告rvm rvmrc warning ignore /Users/userName/code/railsapps/rails-prelaunch-signup/.rvmrc.rvmrc将继续在RVM 1和2 RVM默认的项目文件,所有文件运行忽略警告rvm rvmrc warning ignore all.rvmrcs

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

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

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

如果您使用.ruby-version ,则可以在文件中包含@gemset ,但这与其他切换器不兼容。 要保持兼容性,请在单独的.ruby-gemset文件中使用gemset名称,其他工具会忽略它(它只能与.ruby-version一起使用)

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

rvm use 1.9.3@my-app

它可以转换为.ruby-version

1.9.3

.ruby-gemset

my-app

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

rm .rvmrc

从.rvmrc切换到.ruby-version + .ruby-gemset的快速简便方法

rvm rvmrc to .ruby-version

如果要以简短的方式创建.ruby-version.ruby-gemset文件,可以使用如下命令:

rvm use 2.1.1@nancy --create

rvm --create --ruby-version 2.1.1@nancy

你可以尝试两者。 转到项目的根目录,创建一个.rvmrc文件( touch .rvmrc ),然后编辑rvm use 2.0.0-p451@your_gemset (你的ruby版本和gemset名称)。 保存此文件后,您可以键入以下命令:

cd ../your_project ../ your_project (你在your_project目录中),.rvmrc中的脚本将会执行。

RVM建议使用ruby-version。 您可以运行此命令从.rvmrc切换到.ruby-version

rvm rvmrc to .ruby-version

它的作用是创建2个文件名.ruby-version.ruby-gemset并添加此行

.ruby-version中的ruby-2.0.0-p451

your_gemset在.ruby,宝石

如果你想要,你可以尝试手动:)

使用以下命令安装rvm:

\curl -sSL https://get.rvm.io | bash -s stable --rails

安装不同的ruby版本:

rvm install 1.8.7
rvm install 1.9.2

切换到特定的ruby版本。 例如,1.8.7:

rvm use 1.8.7

要创建一个gemse:

rvm gemset create project_gemset

并使用gemset:

rvm gemset use project_gemset

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM