波打際のブログさん

主に、プログラミング備忘録など。

rbenv-railsを使用して、バージョン指定したrailsプロジェクトを30秒で生成する。

はじめに

 以前、Bundlerを使ってローカルなRailsから新規プロジェクトを作る 方法を紹介しましたが、プロジェクトを生成するたびに実行するのは結構面倒です。そこでこの作業を自動的に行うシェルスクリプトを書いたので紹介します。 → 追記:せっかくなので rbenv のプラグインにしました。


想定環境

  • rbenvがインストールと設定が完了している事。 → こちらを参考に設定&インストール。
  • gemのbundler(bundleコマンド)がインストールされている事。 → こちらのBundlerの項目を参照(コマンド3行です。)

インストール

rbenvのpluginsフォルダにrbenv-railsをgit cloneします。
# rbenvのプラグインフォルダにクローンする。
$ git clone https://github.com/alfa-jpn/rbenv-rails.git ~/.rbenv/plugins/rbenv-rails

インストールは以上です。

使い方

引数

rbenv rails <プロジェクト名> <railsのバージョン>

実行例

# rails 4.0.0 を使用して example_project を作成する。
rbenv rails example_project 4.0.0

もし、途中でsqlite3関連のエラーが出た際は libsqlite3-dev をパッケージマネージャからインストールしてください。

補足

 rbenv-railsは引数で指定されたバージョンのrailsを、ローカル環境(カレントディレクトリ以下のvendorフォルダ)にインストールします。そのrailsを利用して新規にrailsプロジェクトを生成し、生成されたrailsプロジェクトの中で bundle install コマンドを実行し、プロジェクトディレクトリの vendor/bundle に gemをインストールします。

 そのため、rbenv-railsを使用して生成されたrailsプロジェクトは、グローバル環境に干渉しないrailsプロジェクトになります。

補足2

 おそらく、rbenv rails コマンド実行後パッケージのダウンロードに時間がかかると思いますが、コマンドを入力する時間は30秒以内だったはずです。誇大タイトルでしたゆるしてくだ・・・おや誰か来たようだ、うわなにをするやめくぁwせdrftgyふじこlp;