Master(or main)ブランチでリリース可能な状態を保持しておきながら、開発は枝分かれしたブランチでおこないます。開発でコードを壊してしまってもmasterブランチに影響はありません。
ブランチを操作するためには、ローカルリポジトリのディレクトリに移動する必要があります。
# 例
cd ~/Desktop/sample-repo
ブランチの一覧を確認する
git branch
新しいブランチを作成する(ブランチを切る)
git branch ブランチ名
作業するブランチを切り替える
git checkout ブランチ名
# -bをつけるとブランチを作成して切り替える
git checkout -b ブランチ名
ブランチ名を変更する
git branch -m 元ブランチ名 新ブランチ名
2つのブランチの差分を確認する
diff
コマンドでGit Bash内で差分を確認できますが、「p4merge」というソフトを使う方がおすすめです(この記事参照)。
git diff 比較元ブランチ 比較先ブランチ
ローカルリポジトリでブランチをマージする
# 親ブランチにいる状態で子ブランチを指定してマージする
git merge 子ブランチ名
※コンフリクトが発生してマージできない場合は「p4merge」というソフトを使うと簡単に解決することができます。この記事を参考にしてください。
リモートリポジトリでブランチをマージする
- GitHubにログインし、リポジトリで「New pull request」をクリックする。

- メインブランチにマージするブランチを選択し、「Create pull request」をクリックする。

- レビュアーに向けたコメントを入力し、「Create pull request」をクリックする。

- レビュアーが変更内容を確認し、「Merge pull request」と「Confirm merge」をクリックすることで作業用ブランチの変更点がメインブランチに適応される。不要になったブランチはリモートリポジトリからDeleteしておくとよい。
マージ済みの不要なブランチをローカルリポジトリから削除する
# マージ済みのブランチを表示
git branch --merged
# ブランチを削除
git branch -d ブランチ名