【初心者でもOK!】gitコマンドのaliasを設定して楽をする方法

2018.11.17

皆さんgitのaliasというのをご存知ですか?

例えばgitコマンドを打つ際にgit statusと打つところをgit stで済ませたり、
git checkout developgit ch developで済ませる事が出来ます。

gitのaliasとは

gitのaliasとは、gitコマンドを省略して書けるようにするものです。
(ex:git status => git st

statuscheckoutのような良く使用するコマンドをaliasに登録するだけで、コマンドの入力時間もタイプミスも減らせて時短に繋がります

まだaliasを登録した事がない人はとりあえず↓をターミナルで叩き、

Gitのリポジトリフォルダでgit statusではなくgit stと入力してみて下さい。

alias の便利さがご理解いただけるかと!

gitのaliasを設定する方法

aliasの影響範囲について

Gitのaliasを設定する際に、コマンドを変更することで影響範囲が以下3種類のように変わります。

影響範囲 設定が記載されるファイル コマンド例
マシン全体(全ユーザが対象) /etc/gitconfig git config --system alias.st status
現在のユーザのみ ~/.gitconfig git config --global alias.st status
特定リポジトリのみ <特定リポジトリ>/.git/config git config alias.st status

3種類存在しますが、基本真ん中の--globalのみ、該当するファイル(~/.gitconfig)も含め覚えておけば問題ないと思います!

理由としては

  • ユーザを切り替えた際には、そのユーザ毎にaliasを変更するべき(な気がする)
  • リポジトリ毎にgitのaliasを登録し直す事は少ない

ためです。

aliasを設定する

例えばstatusstcheckoutchにする場合、ターミナルで以下のように入力するとaliasを設定出来ます。

成功すると~/.gitconfigに記載されるため、

このように alias が設定されている事が確認出来ます。

もちろん vim ~/.gitconfig のようにして直接ファイルを編集しても設定が出来るので、私は基本この方法を使ってます。

また先ほどのコマンドでaliasを登録する場合、
空白を1つ含む場合は問題なく登録出来ますが、2つ以上空白を含むような内容をaliasとして登録する際はその内容を「''」(シングルコーテーション)や「""」(ダブルコーテーション)で囲む必要があります。

gitのaliasで外部コマンドを実行する

外部コマンドとはgit以外のコマンド(echolsなど)も実行出来るようにすることです。
ターミナルに直接コマンドを打つのと同じような事がgitのaliasを使って実現出来ます

例えば以下のように~/.gitconfigに設定すると

となります。
さすがに誰が使うんだ?て内容ですが。笑

また、この機能を使えば|(パイプ)も使えるので、gitコマンドで表示された結果に対してパイプを使う、といった事も出来ます。

例えば以下のような場合、git branch -aで追跡ブランチも含めて表示し、grepを使いremoteという文字を含むもののみを表示するため、追跡ブランチのみを表示出来ます。

あとがき

gitのaliasを登録するとものすごく時短が出来るので皆さんも設定してみて下さい。

この記事が気に入ったらいいね!
して最新情報をチェックしよう!

スポンサーリンク