【Git】ブランチの一覧を確認する方法を初心者向けに解説
はじめに
Gitを使って開発を進めるときに、複数のブランチを使い分ける場面は多いのではないでしょうか。
ブランチを上手に利用すれば、複数の作業を同時に進めても互いの変更が衝突しにくくなります。
しかし、ブランチが増えるほど「どのブランチがどんな役割を持っているのか」や「どのブランチが存在しているのか」をしっかり把握しておかないと混乱しがちです。
そこで今回は、Gitでブランチの一覧を確認する方法を中心に、実際の開発現場での活用シーンも踏まえて解説します。
初心者の皆さんにも理解しやすいように、できるだけ平易な言葉でまとめました。
この記事を読むとわかること
- Gitのブランチ概念と、なぜブランチが必要なのか
- ローカルブランチ・リモートブランチの一覧を確認する方法
- 実務の現場で役立つ、ブランチ一覧確認の活用ポイント
- コマンド例を用いたブランチの表示・切り替え方法
Gitブランチの概要
ブランチとは何か
ブランチとは、ソースコードの変更履歴を枝分かれさせる仕組みのことです。
例えば、新機能を開発するときはfeature/xxx
という名前のブランチを作り、既存のコードに影響を与えずに機能を追加できます。
機能開発が終わったら、メインのブランチ(たとえばmain
やmaster
、プロジェクトによってはdevelop
など)にマージします。
こうすることで、開発中の不具合がメインのブランチに混ざることを防ぎながら、新機能を安全にテストできます。
また、ブランチ名を工夫すれば、誰がどの機能を開発しているのかが一目でわかりやすくなります。
作業ブランチを使うメリット
ブランチを使う最大のメリットは、開発の並行作業をスムーズに進められる点です。
複数の機能追加やバグ修正を同時に行うときでも、それぞれ別のブランチで作業できるので混乱が起こりにくいでしょう。
また、問題が発生したときに、ブランチごとにコードを管理しておけば原因を切り分けやすくなります。
たとえば、ある機能だけが原因となっている場合は、そのブランチをチェックアウトして調査・修正を行うだけで済みます。
このようにブランチを活用することで、チーム開発や複数人による並行開発が円滑になります。
Gitブランチ一覧を確認する基本
ローカルブランチの一覧を確認する
まずは、自分のローカル環境に存在しているブランチを確認してみましょう。
ローカルブランチの一覧は、次のコマンドで確認できます。
git branch
このコマンドを打つと、現在のリポジトリに存在するローカルブランチの一覧が表示されます。
もし* main
のように先頭に*
がついているブランチがあれば、それが今選択されているブランチです。
ブランチが増えると、どれがどのような役割を果たしているのかを見失いやすくなります。
そこで、ブランチ名自体を機能ごとにわかりやすい名前にしておくと良いでしょう。
たとえば、feature/add-login
やfix/typo-header
のように、何を目的としたブランチなのかがわかりやすくなります。
リモートブランチの一覧を確認する
チームで開発を行う際、他のメンバーが作成したブランチはリモートリポジトリに存在します。
たとえば、GitHubやGitLabなどを使っている場合、そこにあるブランチも含めて確認したい場面があるのではないでしょうか。
リモートにあるブランチの一覧は次のコマンドで確認できます。
git branch -r
-r
オプションをつけることで、リモートリポジトリ上に存在するブランチのみが表示されます。
ここで表示されるブランチは自分のローカルにはまだ存在しない場合もあります。
チームメンバーがプッシュしたけれど、自分がそれをまだ取り込んでいない場合などが典型例です。
また、git branch -a
を使うと、ローカルブランチとリモートブランチの両方を一度に一覧表示できます。
リモートリポジトリに追従していないブランチがあるかを一度に把握したい場合などに便利です。
git branch -a
ブランチ一覧確認の実務的な活用シーン
チーム開発でのブランチ管理
たとえば、チームが増員されると作業するブランチの数も増えます。
「誰が何をどのブランチで作業しているのか」を適宜確認しないと、同じタイミングで別の人が同じファイルを編集して競合が増えるかもしれません。
定期的にgit branch -r
やgit branch -a
を使って、リモートに新しいブランチができていないかを把握する習慣をつけましょう。
また、ブランチ名の付け方をチームでルール化しておけば、プロジェクト全体の見通しをより良く保つことができます。
ブランチの切り替え(checkout)との組み合わせ
ブランチ一覧を見た上で、どのブランチに切り替えるかを判断する場面も多いです。
ブランチの切り替えは次のコマンドで行えます。
git checkout feature/add-login
ここでfeature/add-login
は、切り替え先のブランチ名です。
作業が完了した後は、もう一度git branch
で切り替わったブランチを確認し、自分が正しいブランチ上で作業しているかをチェックするのが望ましいでしょう。
ブランチを切り替えると、ローカル環境のファイルやディレクトリの内容がそのブランチの状態に合わせて切り替わります。
そのため、余分なファイルがある状態で切り替えるとコンフリクト(競合)が発生する可能性もあるので、切り替え前にはコミットやstashなどで作業内容を保存しておくことが一般的です。
ブランチの整理と削除方法
不要になったブランチをクリーンに保つ
開発を続けるうちに、不要なブランチが増えてしまうことがあります。
どの機能が完了しているのか、すでにマージ済みなのか分からなくなると、チーム全体の生産性に影響が出ることもあるでしょう。
そんなときは、もう使わなくなったローカルブランチを削除するのも選択肢の一つです。
ブランチを削除するには次のコマンドを使います。
git branch -d feature/add-login
もし、まだマージされていないブランチを削除しようとするとエラーが出ることもあります。
そういう場合は-D
オプションで強制削除できますが、本当に削除していいか注意してから行うほうが良いでしょう。
リモートブランチの削除
ローカルブランチは削除してもリモートブランチが残っていると、それもまた混乱の元になります。
リモートブランチを削除するときは、git push
でブランチ指定して削除を行う形が一般的です。
git push origin --delete feature/add-login
これでリモートリポジトリからfeature/add-login
が取り除かれます。
実務では、「もう使わないブランチをこまめに消す」というルールを決めておくと、リポジトリがスリムでわかりやすく保たれます。
ブランチ一覧確認が活きる開発フローの例
Main/Develop/Featureの3本柱
いくつかの現場では、main
(またはmaster
)とdevelop
を軸に、そこからfeature/
やfix/
などの枝分かれブランチを作って開発する流れが利用されています。
main
:本番にリリースされている安定版develop
:次のリリース候補やテストがメインになる場所feature/xxx
:新機能や改修を行うためのブランチ
このように役割が明確に分かれていると、git branch -a
で一覧を見たときに、どのブランチがどの段階にあるのかが一目瞭然です。
また、定期的にいらなくなったfeature/xxx
ブランチを削除することで、プロジェクト内の混乱を防ぐことができます。
Issue番号との紐付け
チーム開発では、プロジェクト管理ツール上のIssue番号をブランチ名に含めることもあります。
たとえばfeature/123-add-login
のようなブランチ名にすれば、開発担当者やレビュー担当者がgit branch -r
でリモートブランチを確認したときにも、「これはIssue番号123の対応をしているブランチだな」とすぐにわかります。
こうした命名規則をうまく活用すれば、複数人が同時並行で開発を行うプロジェクトでもコミュニケーションを取りやすくなるでしょう。
ブランチ名は何でも付けられますが、開発が進むほど名前の重複や意図のわからないブランチが生まれがちです。
そのため、チーム全体であらかじめ命名ルールを決めておき、定期的に不要なブランチを削除することが大切です。
まとめ
Gitでブランチの一覧を確認する方法は、シンプルなコマンド一つで実現できます。
しかし、チーム開発や大規模開発においては、ただコマンドを知っているだけではなく、ブランチを整理する運用ルールも重要です。
git branch
:ローカルブランチの一覧表示git branch -r
:リモートに存在するブランチの一覧表示git branch -a
:ローカルとリモートを含めたブランチの一覧表示
これらのコマンドで全体像を把握した上で、不要なブランチの削除や適切な命名規則の導入を行いましょう。
そうすることで、作業の効率アップと、メンバー間のコミュニケーション改善につなげられます。
今後、さらに多くの機能やバグ修正を同時に扱うようになっても、しっかりとブランチを見通せる体制を築いておくと安心です。
皆さんの開発現場でも、ぜひこの記事を参考にブランチの一覧確認を活用してみてください。