gitをbash上でコマンドを高速に叩こうという記事です。
gitのコマンドにalias(コマンドを置き換えること)をかけるには2通ります。
- gitのconfigで設定する方法
- bashの.bashrc
などのファイルでaliasをかける方法
陥りがちな問題
あるあるかと思うのですが.bashrc
でaliasを以下のようにかけます。
alias gc='git checkout'
で、
gc
と打って
TAB!!!!
あんど
TABTABTABTABATBATBATABABTTBAAABTBTABTATTA!!!!
と、タブ補完のために連打しても、連打しても補完が効きません。
こんな状態な自分がいました。
解決策
これはコマンドをgc
で固定してしまっているために次の引数部分がうまく認識されていないのだと思います。
そのため、 git checktout
を、それぞれgitのaliasとcheckoutのaliasを分割するとうまく補完させることができます。
まずはgit
をaliasかけます。
こちらは.bashrc
に、alias g='git'
でOKです。
checkout
のaliasはgit自体のaliasとします。
git config alias.co checkout
のように書きます。
ちなみにglobalな設定にする場合は
git config --global alias.st status
というオプションをつけます。
マシンに適用する場合はこちら。
git config --system alias.st status
リポジトリ単位だと、
git config alias.st status
でOKです。
以上の設定で補完が!
以上の設定をしておくと、
g co
と打てば、あとは補完が効くようになっています。
参考
公式でもこのように言及されています。