こんなときに
リモートのmasterをpullし、ローカルにdevという名前でブランチを切って開発しようと思った
でも実はmasterブランチで作業してしまっていた
もう何件かコミットしちゃった
幸いまだpushはしてない
方法
# 間違って進めてしまったローカルのmasterを開発用のブランチに切り直す
git checkout -b dev
# ローカルのmasterを消す
git branch -d master
# ローカルのmasterを復活させる
git branch master origin/master
おわりに
「git master 間違えた」で検索すると以下がトップヒットします。
Gitでブランチを作るのを忘れてmasterにコミットしてしまったときの対処法
この方法だとコミットのハッシュを調べたり、cherry-pick使ったりと、初心者には難解です。また、masterに重ねてしまったコミットの数だけcherry-pickを繰り返す必要があります。
単にmaster上でコミットを進めてしまって、ブランチを切り直したいだけなら、上記の方法が理解しやすく、良いと思います。
ちなみに
git reset --hard
を用いると2コマンドに短縮できますが、覚えたての頃にこれを多用すると思わぬコミットの損失に繋がりかねないので、本記事では提案していません。