Corredor

ウェブ、プログラミングの勉強メモ。

僕が登録している Git のエイリアス

僕が登録している Git 関連のエイリアスを紹介する。

Git のエイリアスは git config コマンドを使うことで、「git (エイリアス)」という形で叩けるようになる。例えばこんな感じだ。

# 以下のようにエイリアスを設定する。
# 「--global」を付けると「~/.gitconfig」に設定が書き込まれる
$ git config --global alias.st status

# 以下で「git status」が呼べるようになる
$ git st

これでも十分短いのだが、自分は ~/.bashrc にエイリアスを直接登録して、以下のようなモノを用意している。

# ~/.bashrc

# git branch
alias gb='git branch'
# リモートも表示する
alias gba='git branch -a'

# git status --short --branch の略。省略表記しつつブランチ名も確認できる
alias gs='git status -sb'
# 普通の git status
alias gst='git status'

# git add
alias ga='git add'

# 空コミット。大抵は初回コミットで使うので Init というエイリアスにしている。コメントは Vim で入れる
alias ginit='git commit --allow-empty'
# git commit。その場でコメントを打てるように -m オプション付き
alias gc='git commit -m'

# git log … シンプル表示・10件のみ表示
alias gl=' git log --date=short --pretty=format:"%C(Yellow)%h %C(Cyan)%cd %C(Reset)%s %C(Blue)[%cn]%C(Red)%d" -10'
# git log … グラフ表示
alias glr='git log --date=short --pretty=format:"%C(Yellow)%h %C(Cyan)%cd %C(Reset)%s %C(Blue)[%cn]%C(Red)%d" --graph'
# git log … 修正ライン数が分かる
alias gll='git log --date=short --pretty=format:"%C(Yellow)%h %C(Cyan)%cd %C(Reset)%s %C(Blue)[%cn]%C(Red)%d" --numstat'

# git pull
alias gpl='git pull'
# git push
alias gps='git push'

こんな風にしているので、

  • 何かファイルに変更を加えたら、まずはブランチの状況確認 : gs (git status -sb)
  • Add するファイルを指定 (例えば全ファイル Add する) : ga . (git add .)
  • コミットする : gc "ほげほげを追加" (git commit -m "ほげほげを追加")
  • コミット内容を確認する : glr (git log --graph)
  • Push する : gps (git push)

ってな感じで操作できる。大変便利。

他にもエイリアスにしたら良いコマンドはあるとは思うのだが、ぼくは必ずしも使用頻度が高いコマンドを何でもエイリアス化しない方が良いと思っている。特に Git の場合、一度 Push した履歴を Rebase して、改変した歴史を Push するような操作はチーム開発の迷惑になったりする。こういうある種「危険」なコマンドは、わざとタイプ数を多く保っておくことで、一つひとつの操作に注意するようになると考えているからだ。

上記の例でも、gpl (git pull) と gps (git push) は、自分で決めたエイリアスであるにも関わらず、勢いで逆のコマンドを打ちかけることがあったりする。これぐらいならまだ誤って叩いてしまってもそこまで影響がないと思ってエイリアス化したものの、自分の不注意で何かやらかすことが多かったら、エイリアス化をやめようと思う。ご利用は計画的に、ということである。

【改訂新版】Gitポケットリファレンス

【改訂新版】Gitポケットリファレンス

  • 作者: 岡本隆史,武田健太郎,相良幸範
  • 出版社/メーカー: 技術評論社
  • 発売日: 2016/12/01
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログを見る