log

rails アプリを作り始める時の手順

普通に gem install rails して rails new newapp だと gem 環境が汚れるので、bundler を活用して極力少ない手数で開発を始める方法を調べた。

前提条件

  • ruby 1.9.3
  • bundler

がインストール済み。

手順

新規プロジェクトを作るディレクトリを作成。

% mkdir newapp
% cd newapp

bundle init して Gemfile を作成する。

% bundle init
Writing new Gemfile to /path/to/current/dir/newapp/Gemfile

Gemfile を編集して gem "rails" の行のコメントを外す。

% vi Gemfile
# A sample Gemfile
source "https//rubygems.org"

gem "rails" # edit

bundle install して rails をインストールする。path を指定して gem を特定ディレクトリ以下にインストールする。

% bundle install --path vendor/bundle

rails new コマンドでアプリ初期化。ただし、Gemfile を後で修正するのでこの時点では bundle 実行しないようにする。

途中で「Gemfile を上書きしますか?」というメッセージが出るので yes を選択。

% bundle exec rails new . --skip-bundle
...
    conflict  Gemfile
Overwrite /Users/yono/Desktop/newapp/Gemfile? (enter "h" for help) [Ynaqdh] Y
...

Gemfile を編集する。最低限必要なのは therubyracer のコメントを外すこと。

% vi Gemfile
...
group assets do
  gem 'sass-rails',   '~> 3.2.1'
  gem 'coffee-rails', '~> 3.2.1'
  
  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyracer', :platforms => :ruby # edit

  gem 'uglifier', '>= 1.0.3'
end
...

bundle で必要な gem をインストールする。

% bundle install

これでシステムの gem 環境を汚さず rails アプリの開発を始められる。

git でバージョン管理する場合の注意

rails new で入る .gitignore に gem をインストールしたディレクトリ(今回の場合は vendor/bundle)を追記しておくこと。

参考ページ