【ぶらんち】

ブランチ(Git) とは?

最終更新:
💡 コミットを指す目印で、開発の道筋を分ける

Gitで開発の履歴を分けるための、コミットを指す名前付きの参照。通常、そのブランチ上でコミットすると参照先が進み、別のブランチの履歴と分けて作業できる。

📌 このページのポイント
Gitブランチ:コミットを指す目印 1 2 5 M 3 4 main feature/login 共通の履歴から分岐 ○=コミット 履歴は左から右へ / Mはマージコミットの例
履歴を線とコミットで、ブランチ名からの参照を矢印で示す。マージ後もfeature/loginはコミット4を指し、mainはMを指す。名前と本番への反映方法は運用で決める。一本道の履歴ならfast-forwardで統合する場合もある。
ひよこ ひよこ
ブランチって何のためにあるの?
ペンギン先生 ペンギン先生
機能開発や修正の履歴を分けて進めるためだよ。実体はコミットを指す名前付きの目印。ファイル一式を毎回コピーするのではなく、選んだブランチでコミットすると、その目印が新しいコミットへ進むんだ。
ひよこ ひよこ
どうやって作って使うの?
ペンギン先生 ペンギン先生
`git branch feature/login` は作成だけで、切り替えは `git switch feature/login` だよ。作成と切り替えをまとめるなら `git switch -c feature/login` を使える。名前は作業内容に合わせて、チームの取り決めに従って付けよう。
ひよこ ひよこ
mainなら本番の安全なコードなの?
ペンギン先生 ペンギン先生
mainやmasterを安定版として使うのはチームの運用ルールだよ。Gitが名前で品質を保証するわけではない。別ブランチを作っても、その内容を本番に反映する設定なら影響は出るから、公開の手順も確認する必要があるね。
ひよこ ひよこ
切り替えれば、編集中の変更も完全に分かれる?
ペンギン先生 ペンギン先生
未コミットの変更は、切り替え先へ持ち越されることがあるよ。変更が失われる切り替えは通常中止される。ブランチを作るだけで別の作業フォルダーができるわけではないから、`git status` で確認し、保存してから切り替えると分かりやすいね。
ひよこ ひよこ
作業が終わったらマージするの?
ペンギン先生 ペンギン先生
統合先のブランチへ切り替えて、対象ブランチをマージするよ。履歴が一本道なら参照先を進めるfast-forwardで済む場合があり、分岐していればマージコミットを作る場合がある。同じ箇所の変更などで競合したら、解決して内容を確認しよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ブランチ」って出てきたら「Gitでコミットの履歴を分ける名前付きの目印」と思えばだいたいOK!
📖 おまけ:英語の意味
「branch」 = 枝、分岐
💬 木の枝のように、共通の履歴から開発の道筋を分けるイメージだよ。mainという名前の枝だけがGitで特別扱いされるわけではないんだ。

参考資料

← 用語集にもどる