GitHub Desktop「Branch」メニュー徹底解説

〜ブランチ操作とGitコマンドの対応関係〜

はじめに

Gitでの開発では「ブランチ(branch)」の理解と活用が欠かせません。ブランチは「作業の分岐点」であり、機能追加や修正を安全に進めるための仕組みです。

GitHub Desktopを使えば、複雑なコマンドを覚えなくても、メニューから直感的に操作できます。この記事では、GitHub Desktop の「Branch」メニューを整理し、それぞれがGitのどの操作に相当するのかを解説します。


Branch メニューの全体像

「Branch」メニューは、大きく分けて次の3つの機能群に分類できます。

  1. ブランチの基本操作(作成・名前変更・削除など)
  2. ブランチの同期や統合(mainとの同期、マージ、リベースなど)
  3. GitHubとの連携(Pull Request、比較、閲覧)

1. ブランチの基本操作

New Branch…

新しいブランチを作成します。

例:git branch new-feature + git checkout new-feature

Rename…

ブランチ名を変更します。

例:git branch -m old-name new-name

Delete…

ローカルのブランチを削除します。

例:git branch -d feature-branch

Discard All Changes…(変更があると有効化)

作業中の未コミットの変更をすべて破棄します。

例:git reset –hard HEAD

Stash All Changes…(変更があると有効化)

作業中の変更を一時的に保存(stash)します。後で復元可能です。

例:git stash push -m “作業中"


2. ブランチの統合と同期

Update from main

現在のブランチに main の最新変更を取り込みます。

例:git merge main

Compare to Branch

選択したブランチとの変更点を比較します。

例:git diff branch-a branch-b

Merge into Current Branch…

他のブランチを現在のブランチにマージします。

例:git merge feature-branch

「Merge into Current Branch…」で main を選ぶのと、「Update from main」は一見同じように見えますが、GitHub Desktopでは挙動が少し違います


1. Update from main

  • これは 専用ショートカット操作 です。
  • 仕組みとしては「現在のブランチ ← main の変更をマージ」なので、実行結果としては git merge main と同じ。
  • ただし対象ブランチは固定で mainのみ
  • 名前の通り「mainから最新の変更を取り込む」ための機能です。

2. Merge into Current Branch… → mainを選択

  • 汎用のマージ操作です。
  • 他のブランチでも選べますが、main を選んだ場合は結果的に Update from main と同じ挙動(=git merge main)になります。
  • つまり、「mainだけでなく任意のブランチを取り込みたいとき」に使うのがこちら。

3. 違いのまとめ

  • Update from main→ mainを取り込むためのショートカット(操作が1クリックで済む)
  • Merge into Current Branch…→ 取り込み元を自分で選ぶ(mainを選べば結果は同じ)

4. 実務での使い分け

  • チーム開発では「mainを定期的に取り込む」ケースが多いので、Update from main を使うと効率的です。
  • 他の作業ブランチから取り込みたい場合は Merge into Current Branch… を使う、という整理になります。

👉 要するに、main を取り込むだけなら どちらも結果は同じ ですが、

  • 専用ボタン = Update from main
  • 汎用選択 = Merge into Current Branch

という違いですね。


Squash and Merge into Current Branch…

他のブランチを取り込む際にコミットを1つにまとめます。

例:git merge –squash feature-branch

Rebase Current Branch…

現在のブランチを別ブランチの先端に付け替えます。

例:git rebase main


3. GitHubとの連携

Compare on GitHub

GitHubのWeb上でブランチの差分を表示します。

View Branch on GitHub

現在のブランチをGitHub上で開きます。

Preview Pull Request

Pull Requestの作成前に差分をプレビューします。

Create Pull Request

新しいPull RequestをGitHub上で作成します。

(レビューを依頼し、mainブランチへの取り込みを進める)


実務での使い分けのポイント

  • 新機能開発 → New Branch… で分岐して作業開始
  • mainを追従 → Update from main で最新化
  • チームレビュー → Create Pull Request でPRを作成
  • 履歴をシンプルに保ちたい → Squash and Merge を活用
  • 歴史をきれいに整理したい → Rebase を利用

まとめ

GitHub Desktopの「Branch」メニューを理解すると、GUIからでもGitの操作原理を学べます。特に初学者は「この操作がGitコマンドの何に対応するか」を意識すると、CLI学習にもスムーズに進めるでしょう。

ブランチ管理を正しく行うことで、チーム開発の効率と安全性は大きく向上します。


訪問数 5 回, 今日の訪問数 5回