539
470

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

新規Railsプロジェクトの作成手順まとめ

Last updated at Posted at 2017-12-28

rails new するときにいつも手順を忘れてしまい、
いろいろなサイトや記事を見ることになるので、自分用のメモとしてまとめておきます。

1. Gemfileを生成してvendor/bundle以下にRailsをインストールする

まずはRailsプロジェクトを作成します。

Rails Tutorialや入門書では

$ gem install rails
$ rails new project-app

と書かれていますが、これではシステムのgemにインストールされてしまいます。システムのgemはできるだけクリーンに保ち、gemはvendor/bundleに入れてbundle execで呼び出すようにするのが良いそう。

ですので、先にディレクトリを作成し、vendor/bundleにrailsをインストールします。

$ mkdir test-app
$ cd test-app
$ bundle init
Writing new Gemfile to /path/to/project_name/Gemfile

生成されたGemfileを下記のように編集します。(railsのコメントを外すだけ)

Gemfile
# frozen_string_literal: true
source "https://rubygems.org"

git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }

gem "rails"

これで準備ができたので、下記のコマンドでRailsをインストールします。

$ bundle install --path vendor/bundle

この時に--path vendor/bundleを忘れずにつけること。
このオプションを付けることによって、プロジェクトのvendor/bundle以下にgemが格納されます。(一度オプションをつけてbundle installしたら、次回以降はオプションを付けなくてもvendor/bundle以下に格納されるようになります)

2. Railsプロジェクトを生成する

準備が整ったのでRailsプロジェクトを生成します。

$ bundle exec rails new . -B -d mysql --skip-turbolinks --skip-test

Rails Tutorialなどでは $ rails new test-app のようにプロジェクト名を指定していますが、ここを.(ドット)にすると現在のディレクトリにRailsプロジェクトが生成されます。

使用しているオプションは以下の通りです。

オプション 効果
-d, --database=DATABASE 指定したデータベースに変更する(railsのデフォルトのDBはsqlite3)
--skip-turbolinks turbolinksをオフにする 
--skip-test railsのデフォルトのminitestというテストを使わない時に付ける。RSpecなどほかのテストフレームワークを利用したい時に使うと良い
ーB, --skip-bundle Railsプロジェクト作成時にbundle installを行わないようにする

ほかにも様々なオプションがあるのですが割愛します。コマンドがわからなくなった時や使えるオプションを調べたい時は $ rails new -h を実行してみましょう。ヘルプが表示され、使用できるオプションが確認できます。

Railsのインストール実行時にGemfileを上書きしていいか聞かれますが、yesにして続行します。

3. 必要なgemをインストールしてmasterにpush

Railsプロジェクトが生成できたら、Gemfileを編集して必要なgemをインストールしましょう。

Gemfileを編集したらbundle installを実行したら、gitの管理下に置いてgithubに公開します。
このとき、.gitignoreを編集しておくこと。私は https://www.gitignore.io/ でRails用に生成してくれる.gitignoreファイルをそのまま使っています。

$ git init
$ git add .
$ git commit -m "first commit"
$ git remote add origin https://github.com/username/hoge.git
$ git push -u origin master

これでWebアプリを作る土台ができました!

参考にしたサイトや記事

539
470
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
539
470

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?