git switch コマンド
git switchこのコマンドは、より明確にブランチを切り替えるために使用されます。
git switchコマンドの動作はgit checkout類似していますが、より明確なセマンティクスとエラーチェックを提供します。
ブランチを切り替える
以下のコマンドを使用すると、現在のブランチから指定したブランチに切り替えることができます。<branch-name>:
git switch <branch-name>
たとえば、作業ディレクトリをメインブランチに切り替えるには:
git switch master
新しいブランチを作成して切り替える
新しいブランチを作成してそのブランチに同時に切り替えたい場合は、git switchコマンドの後に-c 或 --createオプションを追加し、ブランチ名を指定します。
以下のコマンドは新しいブランチを作成するために使用されます。<new-branch-name>そして、作成したブランチにすぐに切り替えます:
git switch -c <new-branch-name>
たとえば、feature-branch という名前の新しいブランチを作成して、それに切り替えます:
git switch -c feature-branch
これにより、"feature-branch" という名前の新しいブランチが作成され、作業ディレクトリがそのブランチに切り替わります。
前のブランチに切り替える
以下のコマンドを使用すると、ブランチ名を覚えていなくても、前のブランチにすばやく切り替えることができます:
git switch -
作業ディレクトリを特定のコミット状態に復元する
git switch <commit_hash>
これにより、作業ディレクトリが指定されたコミット <commit_hash> の状態に切り替わり、分離HEAD状態になります(つまり、どのブランチにも属しておらず、特定のコミットを直接指しています)。
これらの基本的な使い方に加えて、git switch には他にもいくつかのオプションと使い方があります。例えば:
- 使用
-d或--detachオプションを使用すると、特定のコミットへの切り替えがより明確になり、同じ名前のブランチが存在する場合でもブランチに切り替わりません。 - 使用
-cオプションで新しいブランチを作成し、すぐにそのブランチに切り替える点は、git switch -c <branch_name>と同じです。 - 使用
-f或--forceオプションを使用すると、未コミットの変更があっても切り替え操作を強制的に実行できます。
利用可能なブランチとタグを表示する
以下のコマンドを使用すると、利用可能なローカルブランチとタグを一覧表示して、切り替え先をすばやく選択できます:
git branch
git checkout とは異なり、git switch はブランチの切り替え操作に特化しているため、理解しやすく使いやすいです。さらに、git switch はより優れたエラーチェックを提供し、一般的な誤操作を回避できます。
注意:git switch は Git 2.23 で導入された新しいコマンドです。古いバージョンの Git を使用している場合、git switch コマンドを使用できないかもしれませんが、それでもgit checkout同じ操作を行うことができます。
その他の拡張
Git 基本操作