LoginSignup
5
4

More than 1 year has passed since last update.

設定しておきたい Git Aliases

Posted at

これはQiitaで開催されている「新人プログラマ応援 - みんなで新人を育てよう!」イベントの投稿記事です。

Git Aliases について

Git の設定で Git command の alias の設定が可能です。
これにより、よく使う操作を短いコマンドで実行ができます。

Qiita では多くの方が Git Aliases に関する記事を書いていて参考になる記事がたくさんあります。

私がよく使う alias しているコマンドもいくつか紹介しようと思います。
単純な短縮のための alias は省きます。

force push は push --force-with-lease を使うようにする

これはド定番ですが必須で登録しておきたい alias です。

.gitconfig
  pf = push --force-with-lease

Ref:

最新の main branch を参照する

ローカルで main branch は作成しない運用にしているので、最新の main を参照するときは fetch して remote の main を detach するようにしています。

.gitconfig
  om = !"git fetch --prune && git switch -d origin/HEAD"

ローカルのmainブランチを使わない運用については下記記事を参照ください。

最新の main branch を元に rebase する

上述の操作とほぼ同じです。

.gitconfig
  ro = !"git fetch --prune && git rebase origin/HEAD"

作業途中の編集を記録する

作業途中でブランチを変更するときに git stash は便利ですが、stash していることを忘れたり、stash しすぎると取り出すのに苦労したりします。
そのため、作業途中の変更は基本的に commit するようにしています。
また、stash list とちがって git log は参照頻度が高いため、忘れ去られるなんてこともなくなるとおもいます。

.gitconfig
  cw = !"git add . && git commit --no-verify --allow-empty -m '[ci skip] wip'"

マージ済みブランチを削除する

ローカルにマージ済みのブランチが溜まっていってしまうので一括で削除できるようにしています。

.gitconfig
  bc = !"git branch --merged origin/HEAD | grep -vE 'HEAD' | xargs git branch -d"

ブランチを push する

新しくローカルでブランチを作成したときに --set-upstream オプションを使って毎回 origin [branch名] と記述するのが面倒です。下記の記事のように現在のいるブランチ名を参照して push するようにしておくと楽です。

.gitconfig
  pu = !"git push -u origin $(git branch --format='%(refname:short)' --contains)"

というのを最近までずっと使っていたのですが、現在参照しているブランチしかpush することないし HEAD でいいじゃんとなっています。

.gitconfig
  pu = !"git push -u origin HEAD"
5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4