はじめに
developブランチからfeatureブランチを派生させたいときに意外と手間取ったので、備忘録を兼ねて記事にします。
方法1:git checkout -b
コマンドを使用する方法
1. 派生元になるブランチへ移動する
まずは、checkout
コマンドで起点となるブランチに移動します。
git checkout {起点となるブランチ名}
2. 新しいブランチを作成し、移動する
checkout -b
コマンドを使用すると、起点となるブランチから新たなブランチを作成し、そのまま新たなブランチにチェックアウトします。
git checkout -b {新しいブランチ}
1行で書く方法
git checkout -b {新しいブランチ} {起点となるブランチ}
この方法だと、現在どのブランチにいるかに関わらず、派生ブランチの作成と移動が行えます。
方法2:git branch
コマンドを使う方法
こちらの方法でも、現在どのブランチにいるかに関わらず、派生ブランチの作成と移動が行えます。
checkout -b
を使う方法との違いは、こちらの場合はコマンドを実行しても、チェックアウトしているブランチは移動しない点です。
git branch {新しいブランチ} {起点となるブランチ}
補足
feature
ブランチが存在する状態でfeature/hoge
ブランチを作成するなど、既存ブランチと同じ階層で同じ名前を含むブランチを作成する場合は、先に既存ブランチをリネームか削除しておかないと、fatal: cannot lock ref~
というエラーが出ます。
Githubなど、リモートリポジトリにプッシュする際も同様の注意が必要です。