git coでcheckout!エイリアスでコマンド短縮
公開: 2023-10-07
更新: 2023-10-07
Gitコマンドを短縮するエイリアスの設定方法と、現在自分が設定している具体例をまとめました。
環境:
- MacBook Air (M1, 2020)
- macOS Ventura 13.5.1
- git 2.40.1
エイリアス設定方法
git config
でコマンドのエイリアスを設定できます。
git config --global alias.[エイリアス名] [コマンド]
具体例
branch
git branch
は頻度が高いのでb
だけで打てるようにしています。
# git branch
git b
# alias登録
git config --global alias.b branch
オプション系も組み合わせて使えます。
# 詳細情報付きブランチ一覧
git b -v
# リモートブランチも表示
git b -a
# リモートブランチのみ表示
git b -r
# ブランチ削除
git b -d
# ブランチ強制削除
git b -D
checkout
checkout
も最高によく使うのに長いです、co
にしましょう。
# git checkout
git co
# alias登録
git config --global alias.co checkout
-b
オプションを組み合わせてブランチ新規作成&移動もよく使います
# git checkout -b
git co -b
status
git status
# alias登録
git config --global alias.ss status
log
コミットログを一行で視覚的に全て表示するオプション付きlog
コマンド。個人的にかなり使ってます。全てのログ(log all)からla
というエイリアスにしています。
git log --oneline --graph --all
# alias登録
git config --global alias.la "log --oneline --graph --all"
オプション解説:
-
--oneline
:- 各コミットを一行で表示
- コミットのハッシュとタイトルのみを表示
-
--graph
:- ASCII文字を使用してブランチとマージのグラフを表示
- ブランチの構造やマージの履歴を視覚的に表現
-
--all
:- リポジトリ内のすべてのブランチのコミット履歴を表示
- 通常は現在のブランチの履歴のみ表示されるのを拡張
直近いくつかのlogを見たいとき。
git log -1
# alias登録
git config --global alias.log1 "log -1"
git config --global alias.log3 "log -3"
git config --global alias.log5 "log -5"
設定用コマンド一覧
具体例で説明したエイリアスについて、下記コピペで一括登録できます。
# 一括登録
git config --global alias.b branch
git config --global alias.co checkout
git config --global alias.ss status
git config --global alias.la "log --oneline --graph --all"
git config --global alias.log1 "log -1"
git config --global alias.log3 "log -3"
git config --global alias.log5 "log -5"
Tips
エイリアス運用してみて気づいたことがあります。
- 本当によく使うコマンドのみ登録すること
- オプションはあえてそのままで
長いけどたまにしか使わないコマンドはエイリアス登録してもエイリアス名を忘れます。git config --global --list
をconfgl
のエイリアス名で登録したことがありましたが、使われることはありませんでした。。。
オプション付きのコマンド自体をエイリアス登録することもできますが、あえてしていません。なんとなくですが、ハイフン(-
)で区切ってオプション打つ方がスムーズなことに気づきました。
おそらくですが、元のコマンドからエイリアス名に脳内変換するときに、「checkout
= co
」は一語だからすぐ分かるんですが、「checkout -b
だから、co
とb
を組み合わせてcob
だな」というように変換に若干ですが時間がかかります。それなら、co -b
と打った方が早いことに気づきました。(慣れたら問題ないのかも分かりませんが)
参考ソース
Git公式サイトにエイリアスの説明があります。