ブランチの移動にgit reset --hardをやめてgit switchの組み合わせを使おう

作成日: 2024-02-27
git-current-branch(){ git rev-parse --abbrev-ref HEAD }
git-change(){ BRANCH=$(git-current-branch); git switch -d $1 && git switch -C $BRANCH }
こういうエイリアスを用意して、 git-change HEAD~ をすれば、 git reset --hard HEAD~より安全に現在のブランチを移動できる。
  • git switch -d detachedへチェックアウトする
  • git switch -C すでに存在していても上書きしてブランチを作り移動する
workdirに変更があるときに、switchは失敗してくれる。
git switch -Cgit checkout -B 相当。そろそろ switch に慣れないとおじいちゃん扱いされる。