git switch コマンドは、ブランチを切り替えるためのコマンドです。
従来は git checkout がブランチ切り替えとファイル復元を兼ねていましたが、役割を分けるために Git 2.23 以降で導入されました。
構文(Syntax)
git switch [オプション] <ブランチ名>
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
<ブランチ名> | 指定ブランチに切り替え | git switch develop |
-c <新ブランチ名> | 新しいブランチを作成して切り替え | git switch -c feature-x |
-C <新ブランチ名> | 既存のブランチを強制的に上書き作成して切り替え | git switch -C hotfix |
- | 直前にいたブランチへ切り替え | git switch - |
--detach <コミットID> | 過去のコミットに切り替えて detached HEAD にする | git switch --detach abc1234 |
実行例
既存のブランチに切り替え
git switch develop
新しいブランチを作成して切り替え
git switch -c feature-login
出力例:
Switched to a new branch 'feature-login'
強制的にブランチを再作成して切り替え
git switch -C hotfix
直前のブランチに戻る
git switch -
過去のコミットに切り替え(detached HEAD)
git switch --detach abc1234
エラー例(存在しないブランチ)
git switch notfound
出力例:
fatal: invalid reference: notfound
関連コマンド
git checkout: 従来のコマンド。ブランチ切り替えとファイル復元を兼ねる。git restore: ファイルの復元専用コマンド。git branch: ブランチの作成・一覧・削除を行う。
備考
git switchは ブランチ操作専用 に分離されたため、誤ってファイルを復元してしまうリスクが減ります。git switch -cはgit checkout -bと同等です。- 古い Git では利用できない場合があるため、必要に応じてアップデートしてください。
参考
- Git公式ドキュメント: https://git-scm.com/docs/git-switch

コメント