Gitでブランチを作るときは、名前だけでなく「どのコミットから作るか」を確認します。作業中の変更があるなら、それをどの仕事に属する変更として残すかも先に決めましょう。
この記事では、ローカルのGit操作を例に作成・切替・確認を整理します。コマンドは説明用の未実行例です。共有リポジトリへの反映は、チームの手順に沿って別に行います。
ブランチ名と作業中の変更を分ける
ブランチはコミットを指す名前で、作業フォルダを丸ごと複製する操作ではありません。git branchで作成するだけでは切り替わらず、git switchで作業先を変更します。Git公式のbranch仕様
たとえば「画面修正」と「データ取込修正」を並行するときは、それぞれの開始点を決めます。名前を分けても、未保存の変更が自動的に別の仕事へ分類されるわけではありません。
作成前に現在地を確認する
最初に、現在のブランチと変更一覧を見ます。git statusは、作業ツリーやステージ済みの変更、未追跡ファイルの状態を確認する入口です。
git status
git branch --show-current
git log -1 --oneline
変更がある場合は、その内容をコミットして残すか、作業を中断するかを決めます。よく分からない変更を消してから進める手順にはしません。開始点にmainを使うとしても、手元のmainと共有先の最新状態が一致するかは別の確認です。
作成と切替を一つの操作で行う
現在のコミットから新しいブランチを作って切り替える例は次のとおりです。名前は自分の作業名へ置き換えます。
git switch -c topic/import-check
特定の開始点を指定するなら、末尾へコミットやブランチ名を付けます。git switchの仕様では、切替でローカル変更が失われる状況では操作が停止します。停止したら理由と変更一覧を確認し、強制オプションを足す前に保存方法を決めてください。
切り替えた後に確認する三つのこと
| 確認すること | 見る内容 | 違っていた場合 |
|---|---|---|
| 作業先 | 現在のブランチ名 | 編集を始めず切替先を確認 |
| 開始点 | 直前のコミット | 意図した変更を含むか確認 |
| 手元の状態 | 変更・未追跡ファイル | どの仕事の変更か整理 |
この表は操作結果を照合するための例です。「コマンドが終了した」だけで、目的の開始点から作業できていると判断しないようにします。
共有する前に作業単位を整える
ブランチの作成は、共有先への公開やレビュー完了を意味しません。変更内容を確認し、必要なコミットをまとめてからチームのレビュー経路へ渡します。
変更を確認する観点はコードレビューの進め方も参考になります。まずは一つの変更について、開始点・ブランチ名・変更一覧を説明できる状態にしましょう。