T-CREATOR

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

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

Git で長いコマンドを何度も入力するのは面倒ですよね。エイリアスを使えば、よく使うコマンドを短縮して、作業効率を大幅に向上させられます。この記事では、実務で役立つ Git エイリアスを 50 個厳選してご紹介しますので、ぜひご自身の開発環境に取り入れてみてください。

Git エイリアス早見表

基本操作系

#エイリアス元のコマンド用途
1ststatusステータス確認
2cocheckoutブランチ切り替え
3brbranchブランチ一覧
4cicommitコミット
5cmcommit -mメッセージ付きコミット
6cacommit --amend直前コミット修正
7dfdiff差分確認
8dfsdiff --stagedステージング済み差分
9aaadd --all全ファイル追加
10apadd -p対話的追加

ログ・履歴系

#エイリアス元のコマンド用途
11lglog --oneline --graph --allグラフ付きログ
12lllog --pretty=format:'%C(yellow)%h %C(green)%ad%C(red)%d %C(reset)%s %C(blue)[%cn]' --date=short詳細ログ
13lastlog -1 HEAD最新コミット
14lslog --stat変更ファイル付きログ
15lplog -pパッチ付きログ
16ldlog --pretty=format:'%C(yellow)%h %C(green)%ad %C(blue)%an%C(red)%d %C(reset)%s' --date=relative相対時間ログ
17authorsshortlog -snコミッター一覧
18todaylog --since=midnight --author="$(git config user.name)"今日の作業
19graphlog --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commitカラフルグラフ
20timelinelog --oneline --graph --decorate --allタイムライン表示

ブランチ操作系

#エイリアス元のコマンド用途
21cobcheckout -b新規ブランチ作成・切替
22brdbranch -dブランチ削除
23brDbranch -D強制削除
24brabranch -a全ブランチ表示
25brrbranch -rリモートブランチ一覧
26brmbranch --mergedマージ済みブランチ
27brnmbranch --no-merged未マージブランチ
28renamebranch -mブランチ名変更
29currentrev-parse --abbrev-ref HEAD現在のブランチ名
30maincheckout mainメインブランチへ移動

リモート操作系

#エイリアス元のコマンド用途
31plpullプル
32pspushプッシュ
33psupush -u origin HEAD新規ブランチプッシュ
34psfpush --force-with-lease安全な強制プッシュ
35ftfetchフェッチ
36ftafetch --all全リモートフェッチ
37rvremote -vリモート一覧
38rupremote updateリモート更新
39sync!git fetch --all && git pull同期
40upstream!git push -u origin $(git rev-parse --abbrev-ref HEAD)アップストリーム設定

リセット・取り消し系

#エイリアス元のコマンド用途
41unstagereset HEAD --ステージング解除
42undoreset --soft HEAD^直前コミット取り消し
43rsresetリセット
44rshreset --hard強制リセット
45rssreset --softソフトリセット
46discardcheckout --ファイル変更破棄
47clean-allclean -fd未追跡ファイル削除
48restore-lastcheckout HEAD~1一つ前に戻る

その他便利系

#エイリアス元のコマンド用途
49alias!git config --get-regexp ^alias\\.エイリアス一覧表示
50save!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 statusgit add --allgit 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 statusgit 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 個のエイリアスを紹介しました。すべてをいきなり導入する必要はありませんので、まずはよく使うコマンドから順にエイリアス化してみてください。

たとえば stcobrcm といった基本操作系のエイリアスから始めれば、すぐに効果を実感できるはずです。慣れてきたら、ログ表示やブランチ操作系のエイリアスを追加して、さらに作業効率を高めていきましょう。

また、チーム内でエイリアスを共有すれば、全員が同じコマンドを使えるため、コミュニケーションコストも削減できます。プロジェクトのルートに .gitconfig の一部を共有ファイルとして配置するのもおすすめです。

Git エイリアスを活用して、快適な開発ライフを送ってくださいね。

関連リンク