Git エイリアス 50 連発:長コマンドを一行にする仕事術まとめ

Git で長いコマンドを何度も入力するのは面倒ですよね。エイリアスを使えば、よく使うコマンドを短縮して、作業効率を大幅に向上させられます。この記事では、実務で役立つ Git エイリアスを 50 個厳選してご紹介しますので、ぜひご自身の開発環境に取り入れてみてください。
Git エイリアス早見表
基本操作系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
1 | st | status | ステータス確認 |
2 | co | checkout | ブランチ切り替え |
3 | br | branch | ブランチ一覧 |
4 | ci | commit | コミット |
5 | cm | commit -m | メッセージ付きコミット |
6 | ca | commit --amend | 直前コミット修正 |
7 | df | diff | 差分確認 |
8 | dfs | diff --staged | ステージング済み差分 |
9 | aa | add --all | 全ファイル追加 |
10 | ap | add -p | 対話的追加 |
ログ・履歴系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
11 | lg | log --oneline --graph --all | グラフ付きログ |
12 | ll | log --pretty=format:'%C(yellow)%h %C(green)%ad%C(red)%d %C(reset)%s %C(blue)[%cn]' --date=short | 詳細ログ |
13 | last | log -1 HEAD | 最新コミット |
14 | ls | log --stat | 変更ファイル付きログ |
15 | lp | log -p | パッチ付きログ |
16 | ld | log --pretty=format:'%C(yellow)%h %C(green)%ad %C(blue)%an%C(red)%d %C(reset)%s' --date=relative | 相対時間ログ |
17 | authors | shortlog -sn | コミッター一覧 |
18 | today | log --since=midnight --author="$(git config user.name)" | 今日の作業 |
19 | graph | log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit | カラフルグラフ |
20 | timeline | log --oneline --graph --decorate --all | タイムライン表示 |
ブランチ操作系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
21 | cob | checkout -b | 新規ブランチ作成・切替 |
22 | brd | branch -d | ブランチ削除 |
23 | brD | branch -D | 強制削除 |
24 | bra | branch -a | 全ブランチ表示 |
25 | brr | branch -r | リモートブランチ一覧 |
26 | brm | branch --merged | マージ済みブランチ |
27 | brnm | branch --no-merged | 未マージブランチ |
28 | rename | branch -m | ブランチ名変更 |
29 | current | rev-parse --abbrev-ref HEAD | 現在のブランチ名 |
30 | main | checkout main | メインブランチへ移動 |
リモート操作系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
31 | pl | pull | プル |
32 | ps | push | プッシュ |
33 | psu | push -u origin HEAD | 新規ブランチプッシュ |
34 | psf | push --force-with-lease | 安全な強制プッシュ |
35 | ft | fetch | フェッチ |
36 | fta | fetch --all | 全リモートフェッチ |
37 | rv | remote -v | リモート一覧 |
38 | rup | remote update | リモート更新 |
39 | sync | !git fetch --all && git pull | 同期 |
40 | upstream | !git push -u origin $(git rev-parse --abbrev-ref HEAD) | アップストリーム設定 |
リセット・取り消し系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
41 | unstage | reset HEAD -- | ステージング解除 |
42 | undo | reset --soft HEAD^ | 直前コミット取り消し |
43 | rs | reset | リセット |
44 | rsh | reset --hard | 強制リセット |
45 | rss | reset --soft | ソフトリセット |
46 | discard | checkout -- | ファイル変更破棄 |
47 | clean-all | clean -fd | 未追跡ファイル削除 |
48 | restore-last | checkout HEAD~1 | 一つ前に戻る |
その他便利系
# | エイリアス | 元のコマンド | 用途 |
---|---|---|---|
49 | alias | !git config --get-regexp ^alias\\. | エイリアス一覧表示 |
50 | save | !git add -A && git commit -m 'WIP: Temporary save' | 作業中保存 |
背景
Git は強力なバージョン管理ツールですが、コマンドが長く複雑になりがちです。
たとえば、「グラフ付きでカラフルなログを見たい」と思ったとき、以下のようなコマンドを毎回入力するのは現実的ではありません。
bashgit log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
また、日々の開発では同じコマンドを繰り返し実行することが多く、タイピングの手間や入力ミスが作業の妨げになります。こうした課題を解決するのが Git エイリアスです。
Git エイリアスの仕組み
Git エイリアスは、長いコマンドに短い別名を付ける機能です。以下の図は、エイリアス設定から実行までの流れを示しています。
mermaidflowchart LR
user["開発者"] -->|"git lg と入力"| git["Git"]
git -->|エイリアス展開| cmd["git log --oneline<br/>--graph --all"]
cmd -->|実行| result["グラフ付きログ表示"]
result -->|出力| user
エイリアスを設定すれば、長いコマンドを短い文字列で呼び出せるようになります。
課題
Git を使う中で、以下のような課題に直面することはないでしょうか。
1. コマンドが長すぎて覚えられない
オプションを組み合わせると、コマンドが 100 文字を超えることも珍しくありません。これを毎回正確に入力するのは困難ですし、タイポによるエラーも頻発します。
2. 同じコマンドを何度も入力する手間
日常的に使うコマンド(git status
、git add --all
、git commit -m
など)を毎回フルで入力するのは時間の無駄です。
3. チーム内でコマンドが統一されていない
プロジェクトメンバーがそれぞれ異なるコマンドを使うと、コミュニケーションコストが増加します。エイリアスを共有すれば、チーム全体で効率化を図れます。
課題の構造
以下の図は、エイリアス未使用時の課題とエイリアス導入後の改善を対比したものです。
mermaidflowchart TB
subgraph before["エイリアス未使用"]
long["長いコマンド入力"]
typo["タイポ発生"]
time["時間の浪費"]
end
subgraph after["エイリアス使用"]
short["短いコマンド"]
noerr["入力ミス削減"]
fast["作業効率化"]
end
before -->|改善| after
エイリアスを導入することで、これらの課題を一挙に解決できます。
解決策
Git エイリアスは、.gitconfig
ファイルに設定を記述することで利用できます。設定方法は大きく分けて 2 つあります。
方法 1:コマンドラインから設定
以下のコマンドで、個別にエイリアスを追加できます。
bashgit config --global alias.st status
この方法は手軽ですが、50 個ものエイリアスを一つずつ設定するのは現実的ではありません。
方法 2:.gitconfig
ファイルを直接編集
より効率的なのは、.gitconfig
を直接編集する方法です。ファイルを開いて、以下のようにまとめて記述できます。
bashgit config --global --edit
エディタが開くので、[alias]
セクションを追加します。
エイリアス設定の全体像
エイリアス設定から実行までのフローを図で示します。
mermaidflowchart TD
start["エイリアス設定開始"] --> method{設定方法選択}
method -->|方法1| cli["コマンドライン<br/>git config --global"]
method -->|方法2| edit[".gitconfig 直接編集"]
cli --> register["エイリアス登録"]
edit --> register
register --> use["短縮コマンドで実行"]
use --> expand["Git が展開・実行"]
expand --> output["結果出力"]
図で理解できる要点:
- 設定方法は 2 パターン
- 登録後は即座に利用可能
- Git が自動的にコマンドを展開
それでは、実際に 50 個のエイリアスを見ていきましょう。
具体例
ここからは、カテゴリ別に厳選した 50 個のエイリアスを紹介します。
基本操作系(1〜10)
最もよく使う基本コマンドの短縮形です。
1. st(status)
現在の状態を素早く確認するエイリアスです。
ini[alias]
st = status
使用例は以下の通りです。
bashgit st
git status
を git st
の 2 文字で実行できるため、日常的に頻繁に使うコマンドが格段に早くなります。
2. co(checkout)
ブランチ切り替えを短縮します。
ini[alias]
co = checkout
以下のように使います。
bashgit co feature-branch
ブランチ名を指定してサッと移動できるので、複数ブランチを行き来する際に便利です。
3. br(branch)
ブランチ一覧を表示するエイリアスです。
ini[alias]
br = branch
実行例です。
bashgit br
現在のブランチと一覧が即座に確認できます。
4. ci(commit)
コミット操作を短くします。
ini[alias]
ci = commit
使い方はこちらです。
bashgit ci -m "fix: typo"
コミット時の入力が減り、リズムよく作業を進められます。
5. cm(commit -m)
メッセージ付きコミットをさらに短縮したエイリアスです。
ini[alias]
cm = commit -m
以下のように使えます。
bashgit cm "add new feature"
-m
オプションも省略できるため、コミットメッセージをサッと書き込めます。
6. ca(commit --amend)
直前のコミットを修正するエイリアスです。
ini[alias]
ca = commit --amend
実行方法です。
bashgit ca
コミットメッセージやファイル内容を手早く修正できるため、ミスに気づいたときに重宝します。
7. df(diff)
差分確認を簡単にします。
ini[alias]
df = diff
使用例はこちらです。
bashgit df
変更内容を素早く確認でき、レビュー前のチェックに最適です。
8. dfs(diff --staged)
ステージング済みファイルの差分を表示するエイリアスです。
ini[alias]
dfs = diff --staged
以下のように実行します。
bashgit dfs
コミット前の最終確認として活用できます。
9. aa(add --all)
全ファイルをステージングに追加するエイリアスです。
ini[alias]
aa = add --all
実行例です。
bashgit aa
変更ファイルが多いときに一括追加できるので、時間を大幅に節約できます。
10. ap(add -p)
対話的に変更を追加するエイリアスです。
ini[alias]
ap = add -p
使い方はこちらです。
bashgit ap
変更を一つずつ確認しながらステージングできるため、コミット内容を精密に管理できます。
ログ・履歴系(11〜20)
コミット履歴を見やすく表示するエイリアスをまとめました。
11. lg(log --oneline --graph --all)
グラフ付きでコンパクトなログを表示します。
ini[alias]
lg = log --oneline --graph --all
実行例です。
bashgit lg
ブランチの分岐やマージの流れが一目でわかります。
12. ll(詳細ログ)
カラー付きで詳細なログを表示するエイリアスです。
ini[alias]
ll = log --pretty=format:'%C(yellow)%h %C(green)%ad%C(red)%d %C(reset)%s %C(blue)[%cn]' --date=short
使用方法です。
bashgit ll
日付、コミッター、メッセージが色分けされて読みやすくなります。
13. last(log -1 HEAD)
最新のコミットだけを表示します。
ini[alias]
last = log -1 HEAD
以下のように使います。
bashgit last
直前の作業内容をサッと確認できます。
14. ls(log --stat)
変更されたファイル一覧付きでログを表示します。
ini[alias]
ls = log --stat
実行例です。
bashgit ls
どのファイルが変更されたかを把握しやすくなります。
15. lp(log -p)
パッチ形式で変更内容を含むログを表示します。
ini[alias]
lp = log -p
使い方です。
bashgit lp
コードレベルでの変更を追いたいときに便利です。
16. ld(相対時間ログ)
相対的な日時でログを表示するエイリアスです。
ini[alias]
ld = log --pretty=format:'%C(yellow)%h %C(green)%ad %C(blue)%an%C(red)%d %C(reset)%s' --date=relative
実行例です。
bashgit ld
「2 hours ago」のような表示で、時系列が直感的にわかります。
17. authors(shortlog -sn)
コミッター別の統計を表示します。
ini[alias]
authors = shortlog -sn
使用方法です。
bashgit authors
誰が何回コミットしたかが一覧できます。
18. today(今日の作業)
今日自分が行ったコミットだけを表示するエイリアスです。
ini[alias]
today = log --since=midnight --author="$(git config user.name)"
実行例です。
bashgit today
日報作成時や振り返りに役立ちます。
19. graph(カラフルグラフ)
色付きで装飾されたグラフログを表示します。
ini[alias]
graph = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
使い方です。
bashgit graph
視覚的に美しく、プレゼンテーションにも使えます。
20. timeline(タイムライン表示)
すべてのブランチをタイムライン形式で表示するエイリアスです。
ini[alias]
timeline = log --oneline --graph --decorate --all
実行例です。
bashgit timeline
プロジェクト全体の歴史を俯瞰できます。
ブランチ操作系(21〜30)
ブランチの作成・削除・確認を効率化するエイリアスです。
21. cob(checkout -b)
新規ブランチを作成して即座に切り替えます。
ini[alias]
cob = checkout -b
使用例です。
bashgit cob feature-new
2 つの操作を 1 コマンドで完了できます。
22. brd(branch -d)
マージ済みブランチを削除します。
ini[alias]
brd = branch -d
実行方法です。
bashgit brd old-feature
不要なブランチを安全に削除できます。
23. brD(branch -D)
未マージブランチを強制削除するエイリアスです。
ini[alias]
brD = branch -D
使い方はこちらです。
bashgit brD abandoned-feature
実験的なブランチを一掃したいときに便利です。
24. bra(branch -a)
ローカルとリモートの全ブランチを表示します。
ini[alias]
bra = branch -a
実行例です。
bashgit bra
全ブランチの状況を一度に把握できます。
25. brr(branch -r)
リモートブランチだけを表示するエイリアスです。
ini[alias]
brr = branch -r
使用方法です。
bashgit brr
リモートの状態だけ知りたいときに有効です。
26. brm(branch --merged)
マージ済みブランチの一覧を表示します。
ini[alias]
brm = branch --merged
実行例です。
bashgit brm
削除してよいブランチを特定できます。
27. brnm(branch --no-merged)
未マージブランチを表示するエイリアスです。
ini[alias]
brnm = branch --no-merged
使い方です。
bashgit brnm
作業中のブランチを見逃さずに管理できます。
28. rename(branch -m)
ブランチ名を変更します。
ini[alias]
rename = branch -m
使用例です。
bashgit rename new-name
命名ミスを簡単に修正できます。
29. current(現在のブランチ名)
現在いるブランチ名を表示するエイリアスです。
ini[alias]
current = rev-parse --abbrev-ref HEAD
実行方法です。
bashgit current
スクリプトで現在のブランチ名を取得したいときに便利です。
30. main(checkout main)
メインブランチへ即座に移動します。
ini[alias]
main = checkout main
使い方はこちらです。
bashgit main
頻繁に戻る基幹ブランチへワンコマンドでアクセスできます。
リモート操作系(31〜40)
リモートリポジトリとのやり取りを効率化するエイリアスです。
31. pl(pull)
プル操作を短縮します。
ini[alias]
pl = pull
実行例です。
bashgit pl
最新の変更を素早く取得できます。
32. ps(push)
プッシュを簡潔にするエイリアスです。
ini[alias]
ps = push
使用方法です。
bashgit ps
変更を即座にリモートへ反映できます。
33. psu(push -u origin HEAD)
新規ブランチをリモートへプッシュして追跡設定するエイリアスです。
ini[alias]
psu = push -u origin HEAD
実行例です。
bashgit psu
ブランチ名を指定する手間が省けます。
34. psf(push --force-with-lease)
安全な強制プッシュを行います。
ini[alias]
psf = push --force-with-lease
使い方です。
bashgit psf
他の人の変更を上書きするリスクを減らせます。
35. ft(fetch)
フェッチを簡略化するエイリアスです。
ini[alias]
ft = fetch
実行方法です。
bashgit ft
リモートの最新情報を取得できます。
36. fta(fetch --all)
すべてのリモートからフェッチします。
ini[alias]
fta = fetch --all
使用例です。
bashgit fta
複数リモートを管理している場合に有効です。
37. rv(remote -v)
リモートリポジトリ一覧を表示するエイリアスです。
ini[alias]
rv = remote -v
実行例です。
bashgit rv
どのリモートに接続しているか確認できます。
38. rup(remote update)
すべてのリモートブランチを更新します。
ini[alias]
rup = remote update
使い方です。
bashgit rup
リモートの状態を最新に保てます。
39. sync(フェッチ&プル)
フェッチとプルを一度に実行するエイリアスです。
ini[alias]
sync = !git fetch --all && git pull
実行方法です。
bashgit sync
リモートとローカルを完全に同期できます。
40. upstream(アップストリーム設定)
現在のブランチにアップストリームを設定してプッシュします。
ini[alias]
upstream = !git push -u origin $(git rev-parse --abbrev-ref HEAD)
使用例です。
bashgit upstream
ブランチ名を自動取得して設定してくれるため、手入力が不要です。
リセット・取り消し系(41〜48)
誤った操作を取り消すエイリアスです。
41. unstage(reset HEAD --)
ステージングを解除します。
ini[alias]
unstage = reset HEAD --
実行例です。
bashgit unstage file.txt
間違えて追加したファイルを戻せます。
42. undo(reset --soft HEAD^)
直前のコミットを取り消すエイリアスです。
ini[alias]
undo = reset --soft HEAD^
使い方です。
bashgit undo
変更内容はそのまま残るため、修正後に再コミットできます。
43. rs(reset)
リセット操作を短縮します。
ini[alias]
rs = reset
実行方法です。
bashgit rs
柔軟なリセット操作が可能です。
44. rsh(reset --hard)
強制的に変更を破棄するエイリアスです。
ini[alias]
rsh = reset --hard
使用例です。
bashgit rsh HEAD
確実に元の状態へ戻せますが、慎重に使いましょう。
45. rss(reset --soft)
コミットだけを取り消し、変更は保持します。
ini[alias]
rss = reset --soft
実行例です。
bashgit rss HEAD~1
コミットメッセージを修正したいときに便利です。
46. discard(checkout --)
ファイルの変更を破棄するエイリアスです。
ini[alias]
discard = checkout --
使い方です。
bashgit discard file.txt
特定ファイルだけ元に戻せます。
47. clean-all(clean -fd)
未追跡ファイルとディレクトリを削除します。
ini[alias]
clean-all = clean -fd
実行方法です。
bashgit clean-all
ビルド成果物などを一掃できます。
48. restore-last(checkout HEAD~1)
一つ前のコミットへ移動するエイリアスです。
ini[alias]
restore-last = checkout HEAD~1
使用例です。
bashgit restore-last
過去の状態を確認したいときに有効です。
その他便利系(49〜50)
日常作業を快適にする特殊なエイリアスです。
49. alias(エイリアス一覧表示)
設定済みエイリアスをすべて表示します。
ini[alias]
alias = !git config --get-regexp ^alias\\.
実行例です。
bashgit alias
どんなエイリアスがあるか忘れたときに便利です。
50. save(作業中保存)
すべての変更を一時保存するエイリアスです。
ini[alias]
save = !git add -A && git commit -m 'WIP: Temporary save'
使い方です。
bashgit save
作業途中でブランチを切り替えたいときに重宝します。
エイリアスの組み合わせ活用例
実際の開発フローで、これらのエイリアスをどう組み合わせるかを図で示します。
mermaidflowchart TD
start["新機能開発開始"] --> cob["git cob feature-xxx<br/>(新ブランチ作成)"]
cob --> code["コーディング"]
code --> st["git st<br/>(変更確認)"]
st --> aa["git aa<br/>(全ファイル追加)"]
aa --> cm["git cm 'add feature'<br/>(コミット)"]
cm --> psu["git psu<br/>(リモートへプッシュ)"]
psu --> main_branch["git main<br/>(メインブランチへ)"]
main_branch --> sync["git sync<br/>(最新化)"]
sync --> finish["開発完了"]
図で理解できる要点:
- ブランチ作成からプッシュまでエイリアスで完結
- 各ステップが短縮コマンドで効率化
- チーム開発での標準フローとして活用可能
この流れを習慣化すれば、Git 操作が驚くほどスムーズになります。
まとめ
Git エイリアスは、日常的な Git 操作を劇的に効率化できる強力な機能です。
この記事では、基本操作からログ確認、ブランチ管理、リモート操作、リセット・取り消し、そして特殊な便利機能まで、実務で役立つ 50 個のエイリアスを紹介しました。すべてをいきなり導入する必要はありませんので、まずはよく使うコマンドから順にエイリアス化してみてください。
たとえば st
、co
、br
、cm
といった基本操作系のエイリアスから始めれば、すぐに効果を実感できるはずです。慣れてきたら、ログ表示やブランチ操作系のエイリアスを追加して、さらに作業効率を高めていきましょう。
また、チーム内でエイリアスを共有すれば、全員が同じコマンドを使えるため、コミュニケーションコストも削減できます。プロジェクトのルートに .gitconfig
の一部を共有ファイルとして配置するのもおすすめです。
Git エイリアスを活用して、快適な開発ライフを送ってくださいね。
関連リンク
- article
Git エイリアス 50 連発:長コマンドを一行にする仕事術まとめ
- article
Git を macOS に最適導入:Homebrew・初期設定テンプレ・credential 管理まで
- article
Git の部分取得を徹底比較:sparse-checkout/partial clone/shallow の違いと使い分け
- article
Git で「detached HEAD」になった時の安全復帰プレイブック
- article
Git 内部処理の舞台裏:パックファイル・コミットグラフ・参照の関係を図解で理解
- article
git reset の使い分け完全ガイド:soft・mixed・hard の違いを理解する
- article
Vue.js コンポーネント API 設計:props/emit/slot を最小 API でまとめる
- article
GitHub Copilot 前提のコーディング設計:コメント駆動 → テスト → 実装の最短ループ
- article
Tailwind CSS マルチブランド設計:CSS 変数と data-theme で横断対応
- article
Svelte フォーム体験設計:Optimistic UI/エラー復旧/再送戦略の型
- article
GitHub Actions でゼロダウンタイムリリース:canary/blue-green をパイプライン実装
- article
Git エイリアス 50 連発:長コマンドを一行にする仕事術まとめ
- blog
iPhone 17シリーズの発表!全モデルiPhone 16から進化したポイントを見やすく整理
- blog
Googleストアから訂正案内!Pixel 10ポイント有効期限「1年」表示は誤りだった
- blog
【2025年8月】Googleストア「ストアポイント」は1年表記はミス?2年ルールとの整合性を検証
- blog
Googleストアの注文キャンセルはなぜ起きる?Pixel 10購入前に知るべき注意点
- blog
Pixcel 10シリーズの発表!全モデル Pixcel 9 から進化したポイントを見やすく整理
- blog
フロントエンドエンジニアの成長戦略:コーチングで最速スキルアップする方法
- review
今の自分に満足していますか?『持たざる者の逆襲 まだ何者でもない君へ』溝口勇児
- review
ついに語られた業界の裏側!『フジテレビの正体』堀江貴文が描くテレビ局の本当の姿
- review
愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
- review
週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
- review
新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
- review
科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来