Ruby on Rails 第1章 チュートリアル やることリストと学んだこと 第1章

Rails5.1.4（第4版）でのRails tutorialの第1章のやることのリスト（要約）と自分が学んだことをまとめました。
Rails初心者がチラシの裏代わりに書いたものなので、そのつもりでお読み下さい。
なにか、間違いがあればご指摘していただけると助かります!!

環境の構築→アプリ作成→(GitとBitbucketセットアップ)→デプロイまで
　　
1.[環境構築](#1環境構築)
2.[Railsのインストール](#2railsのインストール)
3.[新規アプリケーションの作成](#3新規アプリケーションの作成)
4.[gemパッケージをダウンロード](#4gemパッケージをダウンロード)
5.[サーバー起動](#5サーバー起動)
6.[Hello Worldを表示](#6hello-world-を表示)
7.[Gitセットアップ（ローカルでバージョン管理)](#7gitセットアップローカルでバージョン管理)
8.[Bitbucketセットアップ（リモートでバージョン管理）](#8biubucketセットアップリモートでバージョン管理)
9.[Herokuセットアップ（本番環境にデプロイ）](#9herokuセットアップ本番環境にデプロイ)
10.[まとめ](#10まとめ)



#1.環境構築
cloud9 で create environment (Name: "rails-tutorial")

インデント設定を変更　(SoftTabs: 4 →　2)

#2.Railsのインストール 

```bash:bash
$ gem install rails -v 5.1.4
```

#3.新規アプリケーションの作成

```bash:bash
$ cd ~/environment
$ rails _5.1.4_ new hello_app
```
#4.gemパッケージをダウンロード
Gemfileを開いてバージョンを決められた通りに書き換えて

```bash:bash
$ cd hello_app/
$ bundle install
```
聞かれたら

```bash:bash
$ bundle update
```

#5.サーバー起動
新しいターミナルで

```bash:bash
$ rails server
```
Preview Running Applicationを押す

#6.Hello World を表示

```rb:application_controller.rb
def hello
  render html: "hello, world!"
end
```

ルーティング設定

```rb:routes.rb
root 'application#hello'
```

#7.Gitセットアップ（ローカルでバージョン管理）

gitインストール（cloud9では初めからインストールされている）

コンピュータ１台に付き最初に1回だけ行う設定

```bash:bash
git config --global user.name "Your Name"
$ git config --global user.email your.email@example.com
```
リポジトリごと（アプリケーションごと)に必要な設定
新しいリポジトリの初期化

```bash:bash
$ git init
```
すべてのファイルをステージング領域に追加

```bash:bash
$ git add -A
```
ステージング領域の中身を知る

```bash:bash
$ git status
```
ステージング領域で控えている変更を本格的にリポジトリに反映 (コミット) する、

```bash:bash
git commit -m "Initialize repository"
```
ローカルリポジトリの中身（コミットの履歴）を確認

```bash:bash
$ git log
```

以前コミットした状態に戻す方法(もとに戻す方法）

```bash:bash
$ git checkout -f
```

#8.Biubucketセットアップ（リモートでバージョン管理）
リモートリポジトリの作成

1.Bitbucketのアカウントを作成（ない場合）

2.公開鍵を作成（ない場合）してコピー
自分が鍵を持っているかどうかを確認するには

```bash:bash
$ cd ~/.ssh
$ ls
 authorized_keys2  id_dsa       known_hosts
 config            id_dsa.pub
```
id_dsa.pubが公開鍵
ない場合は

```bash:bash
$ ssh-keygen
````
鍵を使うときにパスフレーズを入力したくない場合は、パスフレーズを空のままにする

作った公開鍵をみる

```bash:bash
$ cat ~/.ssh/id_rsa.pub
 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx
NrRFi9wrf+M7Q== schacon@agadorlaptop.local
```
↑の公開鍵をコピー



3.公開鍵をBitbucketに貼り付け
  Bitbucketの自分のページで[Bitbucket 設定]、[SSH 鍵] の順に選択して公開鍵を貼り付け

4.リポジトリの作成
Bitbucketの自分のページで[作成]をクリック
※include README? は No にする

作成したリポジトリを別名originとして登録

```bash:bash
$ git remote add origin git@bitbucket.org:ユーザー名/hello_app.git
```
ローカルリポジトリを今作ったリモートリポジトリにプッシュ

```bash:bash
$ git push -u origin --all
```






#9.Herokuセットアップ（本番環境にデプロイ）
























アプリケーションのデータベースを動作させるためには、次のheroku runコマンドを実行して本番データベースのマイグレーションを行う必要もあります (リスト 2.4)。

$ heroku run rails db:migrate
このコマンドを実行すると、先ほど定義したユーザーとマイクロポストのデータモデルを使って、Heroku上のデータベースが更新されます。マイグレーションが完了すれば、Toyアプリを実際のPostgreSQLデータベースをバックエンドに配置した本番環境で利用できるようになっているはずです(図 2.20)。






































<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>

#10.まとめ
- Ruby on Railsとは、Web開発のためのフレームワークであり、Rubyプログラミング言語によって記述されている。
- 事前設定済みのクラウド環境を利用することで、Railsのインストール、アプリケーションの生成、生成されたファイルの編集を簡単に行うことができる。
- Railsにはrailsという名前のコマンドラインコマンドがあり、rails newで新しいアプリケーションを生成したり、rails serverでローカルサーバーを実行したりできる。

- コントローラのアクションを追加したり、ルートルーティングを変更したりするだけで「hello, world」アプリケーションを作成できる。

- Gitによるバージョン管理を導入し、Bitbucketの非公開リポジトリにプッシュする理由は、データの喪失を防止し、他の開発者との共同作業を行えるようにするため。

- 作成したアプリケーションをHerokuの本番環境にデプロイした。

（[Ruby on Rails チュートリアル](https://railstutorial.jp/chapters/beginning?version=5.1#cha-beginning) から引用）