Ruby on Railsでウェブサービスを作ろうと思った動機は
1.以前Qiitaに投稿した環境情報収集ロボットから得た情報を可視化出来るウェブサービスが欲しい
2.ロボット操作が出来るウェブサービスがほしい
3.個人が持つロボットを登録してロボットの情報を共有しつつコミュニケーションが出来るSNSサービスがほしい
と色々あるからです。
gitのリポジトリ操作もRailsの勉強しながら嫌でも覚える事になりそうだったので、前回の投稿時に述べた
グループでのコード管理手法やRailsアプリ作成に必要な手順をメモしていきます。
開発環境の整備
MacOSX 10.8を使っています。
古いOSですが特に開発において今の所困った事もありません。
では環境の整備から始めます。
Railsをインストール
$ gem install rails -v 4.2.2
$ cd ~ # ホームディレクトリに移動
$ mkdir workspace # workspaceディレクトリを作成
$ cd workspace/ # 作成したworkspaceディレクトリに移動
新規Railsアプリを作成
$ rails _4.2.2_ new hello_app
これでhello_appディレクトリ配下に
各種ディクトリが作成/配置されます。
hello_app配下にGemfileというものがありますが
これがアプリが使用するgemのパッケージとバージョンを規定するものです。
hello_app配下に移動し
bundle installでgemを一括インストールします。
$ cd hello_app/
$ bundle install
Gemfile 例
source 'https://rubygems.org'
gem 'rails', '4.2.2'
gem 'sass-rails', '5.0.2'
gem 'uglifier', '2.5.3'
gem 'coffee-rails', '4.1.0'
gem 'jquery-rails', '4.0.3'
gem 'turbolinks', '2.3.0'
gem 'jbuilder', '2.2.3'
gem 'sdoc', '0.4.0', group: :doc
group :development, :test do
gem 'sqlite3', '1.3.9'
gem 'byebug', '3.4.0'
gem 'web-console', '2.0.0.beta3'
gem 'spring', '1.1.3'
end
ウェブサーバーの起動
デフォルトではlocalhost:3000で起動します。
$ rails server
$ rails s #省略版のコマンド
GITでバージョン管理
$ git init
$ git add -A
$ git status
$ git commit -m "Initialize repository"
$ git log
上記は前回の投稿の内容ですが
checkout -b "ブランチ名" で
新しいブランチの作成と切り替えが出来ます。
git branchで現在のブランチを確認可能
$ git checkout -b modify-README
Switched to a new branch 'modify-README'
$ git branch
master
* modify-README
masterブランチにマージしたい時は
masterブランチに切り替えしてから
git merge "Merge対象ブランチ"を使います。
$ git checkout master #masterブランチに再度切り替え
Switched to branch 'master'
$ git merge modify-README
Updating 34f06b7..2c92bef
Fast forward
README.rdoc | 243 --------------------------------------------------
README.md | 5 +
2 files changed, 5 insertions(+), 243 deletions(-)
delete mode 100644 README.rdoc
create mode 100644 README.md
Merge後の不要になったブランチは git branch -d "ブランチ名"で削除出来ます。
$ git branch -d modify-README
Deleted branch modify-README (was 2c92bef).
Mergeが終わったらpushします。
pushについては前回の内容を参照の事
git リポジトリの利用方法
参考のRuby on Railsチュートリアルを
簡略化するとこんな感じの1章です。
2章で簡易アプリを構築する解説があるのですが3章以降で同じ様な事をするので静的ページの構築から初めていきましょう。
静的ページの構築準備
sample_appをrailsから作成します。
$ cd ~/workspace
$ rails _4.2.2_ new sample_app
$ cd sample_app/
ローカリリポジトリに
static-pagesブランチを作成しておきます。
$ git checkout master
$ git checkout -b static-pages
このsample_appで使用するGemfileはこんな感じです。
source 'https://rubygems.org'
gem 'rails', '4.2.2'
gem 'sass-rails', '5.0.2'
gem 'uglifier', '2.5.3'
gem 'coffee-rails', '4.1.0'
gem 'jquery-rails', '4.0.3'
gem 'turbolinks', '2.3.0'
gem 'jbuilder', '2.2.3'
gem 'sdoc', '0.4.0', group: :doc
group :development, :test do
gem 'sqlite3', '1.3.9'
gem 'byebug', '3.4.0'
gem 'web-console', '2.0.0.beta3'
gem 'spring', '1.1.3'
end
group :test do
gem 'minitest-reporters', '1.0.5'
gem 'mini_backtrace', '0.1.3'
gem 'guard-minitest', '2.3.1'
end
group :production do
gem 'pg', '0.17.1'
gem 'rails_12factor', '0.0.2'
end
bundle でインストールし
gitのローカルリポジトリを作成しておきましょう。
$ bundle install --without production
gitのリモートリポジトリにも更新を保存しておきます。
$ git init
$ git add -A
$ git commit -m "Initialize repository"
# githubのリモートリポジトリ使います。セキュリティ上の問題が気になる場合はbitbucket等ご利用下さい
$ git remote add origin "github リモートリポジトリURL"
$ git push -u origin --all # リポジトリとブランチをすべてプッシュする
参考:
Ruby on Rails チュートリアル
実例を使ってRailsを学ぼう
Michael Hartl (マイケル・ハートル)