Skip to content

Instantly share code, notes, and snippets.

@kozy4324
Last active December 17, 2015 19:29
Show Gist options
  • Save kozy4324/5660981 to your computer and use it in GitHub Desktop.
Save kozy4324/5660981 to your computer and use it in GitHub Desktop.
RVM

RVMユースケース別コマンドメモ

RVM自身を最新版に更新

getアクションを利用すると特定バージョンのRVMに自身を更新する. $ rvm getと引き数なしで実行すると指定可能なタグやバージョンの書式を確認できる. 最新安定板に更新するにはstableを指定.

$ rvm get stable

インストール可能なRubyのバージョンを確認する

$ rvm list known

インストール

$ rvm list knownで確認できるタグを引き数に指定する.

$ rvm install 2.0.0

rsyncが利用できない環境でのワークアラウンド

rvm 1.20.12ではインストールスクリプト中にport selfupdateが動くため、rsyncが利用できない環境だと詰む. port selfupdateの箇所を変更して何とか回避した.

http://stackoverflow.com/questions/16520919/rvm-macports-wont-update-through-proxy/16787219

バイナリの切り替え

カレントシェルで2.0.0を利用する.

$ rvm use 2.0.0

$ rvm listコマンドで確認できる.

$ rvm list

rvm rubies

   ruby-1.9.2-p320 [ x86_64 ]
=* ruby-1.9.3-p194 [ x86_64 ]
   ruby-2.0.0-p195 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

新しいシェルでのデフォルトを設定するには--deafultオプションを付ける.

$ rvm use --default 2.0.0

プロジェクト毎にバージョン切り替えと指定する

.rvmrc、もしくは.ruby-version.ruby-gemsetを利用する.

.rvmrcは任意のスクリプトを実行できる. バージョンとgemsetを指定するのみであれば後者を利用したほうがよい.

http://stackoverflow.com/questions/15708916/use-rvmrc-or-ruby-version-file-to-set-a-project-gemset-with-rvm

  • .rvmrcは任意のスクリプト実行が可能なのでtrunstedかどうか確認する必要あり
  • .ruby-versionはRVM以外のツール(rbenvとか)にも受け入れられる(.ruby-gemsetはRVM専用)

任意の.ruby-version.ruby-gemsetを以下コマンドで出力できる.

$ rvm --create --ruby-version 2.0.0@example

rirdocのドキュメンテーション

普通にインストールするとドキュメントの生成(make install-doc的なやつ)はスキップされている. ドキュメント生成用のコマンドもRVMには用意されている.

$ rvm docs generate

gemset

gemsetの一覧を確認する

$ rvm gemset list

新しいgemsetを作成する

$ rvm gemset create rails4

gemsetを切り替える

rvm useでversion指定すると共にgemsetを指定できる.

$ rvm use 2.0.0@rails4

gemsetのexportとimport

カレントのgemsetが./[gemset名].gemsに出力される.

$ rvm gemset export

importで該当gemsファイルのgemをインストールする.

$ rvm gemset import [gemset名].gems

importで引き数を指定しなかった場合は以下ルールでgemsファイルをサーチする.

  1. ./[カレントのgemset名].gems
  2. ./default.gems
  3. ./system.gems
  4. ./*.gems

カレントのgemsetを空っぽにする

$ rvm gemset empty

gemsetのコピー

$ rvm gemset copy 1.8.7@rails3 1.9.2-head@rails3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment