∞典型的なRVMプロジェクトワークフロー
RVMは、自動Ruby切り替えのためにプロジェクトを設定できるように、複数の種類のファイルをサポートしています。いずれの場合も、これらのファイルはプロジェクト構成の一部であるため、バージョン管理システムに追加してください。
∞サポートされているファイル
優先順位順にリストされています
- .rvmrc- 環境を完全にカスタマイズできるシェルスクリプト
- .versions.conf-- key=value設定ファイル
- .ruby-version-- ruby-versionのみを指定する1行のファイル
- Gemfile- コメント:- #ruby=1.9.3およびディレクティブ:- ruby "1.9.3"
注記
- すべてのRVMバージョンで動作するのは.rvmrcのみです。他のファイルはRVM1.11.0で導入されました。
- 環境の切り替えはRVM 1.22.0からサポートされています。
∞プロジェクトファイル .rvmrc
        
        これは最初にサポートされた形式であり、他のどのファイルよりも優先されます。.rvmrcには大きな欠点があります。許可されていないコードの実行を防ぐために信頼する必要があるため、使用が難しく、本番環境へのデプロイが複雑になります。スクリプトが不要な場合は、他のプロジェクトファイルの使用をお勧めします。
単純な.rvmrcの生成
echo 'rvm --create use ree@tedxperth' > .rvmrc
より複雑なバージョン
rvm --create use ree@tedxperth --rvmrc
ファイルは、追加のカスタマイズを提供するために編集できます。
ファイルを信頼するには
rvm rvmrc trust /path/to/project
∞プロジェクトファイル .ruby-version
        
        このファイルは、chruby と rbenv でもサポートされています。.ruby-versionはRuby名のみなので、信頼する必要がなく、.rvmrcよりも使い方が簡単です。
.ruby-versionの生成
echo 1.9.3 > .ruby-version # OR: rvm --ruby-version use 1.9.3
RVMでは、.ruby-versionはruby@gemsetの形式でgemsetもサポートしていますが、これは他のRubyバージョンマネージャーとは互換性がありません。互換性を損なうことなくgemsetを指定するために、別のファイル(.ruby-gemset)を使用できます。
.ruby-gemsetの生成
echo my_app > .ruby-gemset # OR: rvm --ruby-version use 1.9.3@my_app
2番目の形式は、.ruby-versionと.ruby-gemsetの両方を作成します。
一部のプロジェクトでは、環境に追加の構成が必要です。これは、.ruby-envファイルを使用することでサポートされます。
echo "JRUBY_OPTS=--1.9" >> .ruby-env
この変数は、プロジェクトディレクトリに入ると設定され、プロジェクトディレクトリから出ると以前の値に戻されます。
.rbenv-version、.rbenv-vars、.rbfu-versionといったファイルもサポートされていることに注意してください。これらは.ruby-versionよりも優先順位が低くなります。
∞プロジェクトファイル .versions.conf
        
        より高度なプロジェクトの場合、Rubyバージョン以外にも指定できる.versions.confがサポートされています。
.versions.confの生成
rvm --create --versions-conf use 1.9.3@my_app
.versions.confの例
ruby=jruby-1.6.8 ruby-gemset=my_app env-JRUBY_OPTS=--1.9
∞プロジェクトファイル Gemfile
        
        Gemfileのrubyディレクティブはサポートされており、RVMによって読み取られます。
Gemfileの例
ruby "1.9.3" gem "haml"
rubyディレクティブを使用できない場合、またはより細かいバージョンが必要な場合は、次のコメントがディレクティブよりも優先されます。
#ruby=jruby-1.6.8 #ruby-gemset=my_app #ruby-env-JRUBY_OPTS=--1.9
別の例:特定のパッチレベルのMRI Rubyを使用する
#ruby=ruby-1.9.3-p194 #ruby-gemset=my_app
古いバージョンのbundlerはディレクティブをサポートしていなかったため、コメントが推奨されます。
∞RVM設定
これらの変数は、~/.rvmrcと/etc/rvmrcで設定できます。
- rvm_project_rvmrc_default=1- 現在のディレクトリにプロジェクトファイルが見つからない場合は、デフォルトのRubyを優先します。
- rvm_autoinstall_bundler_flag=1-- Gemfileが利用可能な場合、- bundlergemをインストールし、- bundle installを実行します。
 
        