2026年4月7日火曜日

Gitブランチの「作成&切り替え」同時操作と内部構造

 1. 推奨コマンド(Git 2.23+)

Bash
git switch -c <ブランチ名>
  • 理由: checkout より安全。役割が「ブランチ操作」に限定されているため、誤ったファイル復元を防げる。

2. 従来コマンド

Bash
git checkout -b <ブランチ名>

内部動作の要点

  • 作成: .git/refs/heads/ に新規ファイルを作成し、現在のコミットハッシュを記録。

  • 切り替え: .git/HEAD の参照先を新しいブランチ名へ書き換え。

  • ポインタ: 実体は「特定のコミットを指す動的なポインタ」の移動に過ぎないため、一瞬で完了する。

運用上の注意

  • 未コミットの変更がある場合: git stash で一時退避してから実行。

  • 命名規則: feat/, fix/, refactor/ などのプレフィックスを推奨(Conventional Commits準拠)。

  • Atomic Commit: 1コミット1機能を徹底し、後からの rebase を容易にする。