これはQiitaで開催されている「新人プログラマ応援 - みんなで新人を育てよう!」イベントの投稿記事です。
Git Aliases について
Git の設定で Git command の alias の設定が可能です。
これにより、よく使う操作を短いコマンドで実行ができます。
Qiita では多くの方が Git Aliases に関する記事を書いていて参考になる記事がたくさんあります。
私がよく使う alias しているコマンドもいくつか紹介しようと思います。
単純な短縮のための alias は省きます。
force push は push --force-with-lease
を使うようにする
これはド定番ですが必須で登録しておきたい alias です。
pf = push --force-with-lease
Ref:
最新の main branch を参照する
ローカルで main branch は作成しない運用にしているので、最新の main を参照するときは fetch して remote の main を detach するようにしています。
om = !"git fetch --prune && git switch -d origin/HEAD"
ローカルのmainブランチを使わない運用については下記記事を参照ください。
最新の main branch を元に rebase する
上述の操作とほぼ同じです。
ro = !"git fetch --prune && git rebase origin/HEAD"
作業途中の編集を記録する
作業途中でブランチを変更するときに git stash は便利ですが、stash していることを忘れたり、stash しすぎると取り出すのに苦労したりします。
そのため、作業途中の変更は基本的に commit するようにしています。
また、stash list とちがって git log は参照頻度が高いため、忘れ去られるなんてこともなくなるとおもいます。
cw = !"git add . && git commit --no-verify --allow-empty -m '[ci skip] wip'"
マージ済みブランチを削除する
ローカルにマージ済みのブランチが溜まっていってしまうので一括で削除できるようにしています。
bc = !"git branch --merged origin/HEAD | grep -vE 'HEAD' | xargs git branch -d"
ブランチを push する
新しくローカルでブランチを作成したときに --set-upstream
オプションを使って毎回 origin [branch名]
と記述するのが面倒です。下記の記事のように現在のいるブランチ名を参照して push するようにしておくと楽です。
pu = !"git push -u origin $(git branch --format='%(refname:short)' --contains)"
というのを最近までずっと使っていたのですが、現在参照しているブランチしかpush することないし HEAD
でいいじゃんとなっています。
pu = !"git push -u origin HEAD"