Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
417
Help us understand the problem. What is going on with this article?
@yuitnnn

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

More than 3 years have passed since last update.

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アプリを作る土台ができました!

参考にしたサイトや記事

417
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
yuitnnn
フロントエンドエンジニア→ディレクター

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
417
Help us understand the problem. What is going on with this article?