ブランチの作成、一覧表示、削除などを行います。
オプション | 説明 |
---|---|
-a, --all | すべてのブランチ(リモートブランチを含む)を表示 |
-d, --delete | ブランチを削除 |
-D | ブランチを強制削除 |
-m, --move | ブランチ名を変更 |
-v, --verbose | 各ブランチの最新コミットも表示 |
例:
git branch
- ローカルブランチの一覧を表示git branch feature
- 新しいブランチを作成git branch -a
- すべてのブランチ(リモートブランチを含む)を表示git branch -d feature
- マージ済みのブランチを削除git branch -D feature
- マージ状態に関わらずブランチを強制削除git branch -m old-name new-name
- ブランチ名を変更
ブランチを切り替えたり、作業ディレクトリのファイルを復元したりします。
オプション | 説明 |
---|---|
-b <ブランチ名> | 新しいブランチを作成して切り替え |
-B <ブランチ名> | ブランチが存在しない場合は作成し、存在する場合はリセットして切り替え |
-f, --force | 未コミットの変更があっても強制的に切り替え(変更は失われる) |
-- | ファイルパスとブランチ名を区別するための区切り |
例:
git checkout develop
- developブランチに切り替えgit checkout -b feature
- 新しいfeatureブランチを作成して切り替えgit checkout -- file.txt
- file.txtの変更を取り消し(最後のコミットの状態に戻す)git checkout HEAD~1 file.txt
- file.txtを1つ前のコミットの状態に戻すgit checkout origin/main
- リモートのmainブランチの状態に切り替え
ブランチを切り替えるための専用コマンドです(checkoutの機能を分割)。
オプション | 説明 |
---|---|
-c <ブランチ名> | 新しいブランチを作成して切り替え |
-C <ブランチ名> | ブランチが存在しない場合は作成し、存在する場合はリセットして切り替え |
-d, --detach | 特定のコミットに切り替え(detachedヘッド状態) |
--discard-changes | 未コミットの変更を破棄して切り替え |
例:
git switch main
- mainブランチに切り替えgit switch -c feature
- 新しいfeatureブランチを作成して切り替えgit switch -C feature
- featureブランチが存在しない場合は作成し、存在する場合はリセットして切り替えgit switch -d HEAD~3
- 3つ前のコミットに切り替え(detachedヘッド状態)git switch -
- 直前にいたブランチに戻る