Mac OSX 10.6.4を実行していますが、RVMをインストールしています。これまでのところ素晴らしく、同じマシン上で頭痛のないRailsとRuby!
ただし、セットアップごとに特定のgem(パッセンジャーなど)をインストールする必要はありません。 gemset間でgemを共有する方法はありますか? [email protected]と1.9.2@Rails3がありますが、パッセンジャー、mysql、capistranoなどのgemを一度インストールしてすべてのバージョンで使用できますか?
グローバルgemsetと呼ばれるものがあり、特定のRubyバージョンのすべてのgemsetで共有されます。ただし、Rubyバージョン間でgemを共有することはできません。
ただし、できることは、新しいRubyバージョンを追加するときに自動的にインストールされるgemのリストを作成することです。これについては here で説明されています。 ~/.rvm/gemsets/global.gems
と呼ばれるファイルには、各Rubyバージョンで必要なgemのリストが含まれています。
それが役に立てば幸い。
最新のRVMバージョン(1.17.0以降)では、次のように入力します。
rvm @global do gem install passenger
または
rvm 1.9.3@global do gem install passenger
特定のバージョンのRubyでのみ必要な場合。
次のコマンドを使用して、グローバルgemsetsを作成および使用できます。
rvm gemset create global
rvm gemset use global
グローバルgemsetの使用を作成して実行したら、通常どおりgemをインストールします。
gem install mysql passenger
すべてのgemsetに必要なgemを「グローバル」なrvm gemset名に追加します。
rvm 1.9.2@global
次に、特定の宝石セットを投影しますrvm 1.9.2@myProject
は、あなたがすでにあなたのグローバルリストから「デフォルト」の宝石を持っているでしょう
グローバルgemを次のように作成して使用します。
rvm use <Ruby version>@global --create
そして、gemset間で共有したいgemをインストールします。
bundle install <gem name>
ただし、これらのgemは同じRubyバージョンのgemset間でのみ共有できます。
RVMのドキュメントによると、実際にはrvm全体のレベル、インタープリターごと、インタープリターバージョンごと、そして最終的にインタープリターごとの特定のパッチレベルで定義できる「グローバルな」gemsetがいくつかあります。そして、インストールされたgemは、あるレベルから次のレベルにカスケードします。