GitHubでmaster
ではなく、違うブランチで作業をすることが一般的です。
その際に別のブランチで作成したファイルなどを、master
にマージ(結合)する必要があります。
その流れをまとめてみました。
はじめに
- ブランチは
master
のみ - 新規で作成したブランチで作業をしたい
- 自分がレポジトリ管理者で、マージまで行う
このような条件でブランチ作成からマージまで行いたいと思います。
ブランチを作る & 作業をする
現在のブランチがmaster
であることを確認。
$ git branch
* master
master
になっていることを確認したら下記のコードを入力して、新規ブランチを作成する。
git checkout -b <任意のブランチ名>
例えばブランチ名をchapter01
にした場合は下記のように表示される。
$ git branch
* chapter01
master
GitHubにプッシュする
作業が完了したら、GitHubにプッシュをする。
GitからGitHubにプッシュする一連の流れ.
$ git status # どのファイルを変更したか確認
$ git diff # 前回のコミットと、今回変更したファイルの差分を抽出
# ファイルを全てコミットする場合
$ git add .
# ファイルを指定してコミットする場合
$ git add ファイル名 # 例) git add messages_controller.rb
$ git commit -m "任意コメント"
# GitHubへ反映
$ git push origin BRANCH_NAME # 例) git push origin chapter01
GitHub上でプルリクを作成する
プルリクエストの作成は、GitHub上で行います。
①Compare & pull request
のボタンを押します。
②変更内容をコメントで記載して、Create Pull Request
を押します。
③どのブランチから、どのブランチへPull Request
するのかを確認します。
今回は、chapter1_sub
からmaster
へプルリクエストしています。
④Code
のページへ戻り、ブランチがmaster
になっているか確認します。
⑤Pull rquests
へ戻り、Merge pull request
をクリックします。
⑥コメントを記入して、Confirm merge
をクリックしたらマージが完了。
⑦変更前と変更後
ローカルリポジトリのブランチをmaster
に切り替えて、リモートリポジトリからPullする
$ git checkout master
$ git pull
これをすることで、マージしたリモートリポジトリの変更を、ローカルリポジトリに反映することができました。
以上がブランチ作成から、マージまでの一連の流れになります。