🙆‍♀️

git checkout -b と git checkout -B の違いとは?(git checkoutはブランチ移動だけじゃない)

2024/02/22に公開

git checkoutってそもそも何?

これはブランチを移動する時に使います。

git checkout -b と git checkout -B の違いは?

これは同じようで実際は使い方が違います。

git checkout -b

これは新しいブランチを作成し、そのブランチに切り替えます
具体的には、指定したブランチ名が存在しない場合に新しいブランチを作成します。例えば、git checkout -b new-branch は new-branch という名前の新しいブランチを作成し、そのブランチに切り替えます。

git checkout -B

これは既存のブランチを別の場所にリセットして、指定したコミットに移動します。
具体的には、指定したブランチが存在する場合にそのブランチを強制的に指定したコミットにリセットします。例えば、git checkout -B existing-branch some-commit は existing-branch という名前の既存のブランチを some-commit というコミットにリセットします。

Discussion