履歴

git log

コミット履歴を表示します。誰がいつ何をコミットしたかを確認できます。

構文 git log [options] [<revision range>] [[--] <path>...]

オプション

フラグ 説明
--oneline 各コミットを1行で表示します。ハッシュの短縮形とメッセージのみを出力します。
--graph ブランチのグラフを ASCII アートで表示します。--oneline と組み合わせると読みやすくなります。
-n <number> 最新の <number> 件のコミットだけを表示します(例: -5 で直近5件)。
--author=<pattern> 指定した作者名に一致するコミットだけを表示します。
--since=<date> 指定した日時以降のコミットを表示します(例: --since='2 weeks ago')。
-p, --patch 各コミットの差分(diff)も合わせて表示します。
--stat 各コミットで変更されたファイルの統計情報を表示します。

git log はコミット履歴を閲覧するための中心的なコマンドです。デフォルトでは最新のコミットから順に表示され、q キーで終了します。

基本的な使い方

# コミット履歴を表示
git log

# コンパクトに1行表示
git log --oneline

# グラフ付きで表示
git log --oneline --graph --all

よく使う組み合わせ

# 直近10件をグラフ付きで表示
git log --oneline --graph -10

# 特定ファイルの変更履歴
git log --oneline -- src/index.js

# 特定期間のコミット
git log --since='1 week ago' --oneline

# 差分付きで表示
git log -p -3

出力例

commit a1b2c3d4e5f6... (HEAD -> main, origin/main)
Author: Taro Yamada <taro@example.com>
Date:   Thu Jun 12 14:30:00 2025 +0900

    ユーザー認証機能を追加

commit f7e8d9c0b1a2...
Author: Hanako Sato <hanako@example.com>
Date:   Wed Jun 11 10:00:00 2025 +0900

    README を更新

特定のコミットを検索する

# コミットメッセージにキーワードが含まれるものを検索
git log --grep="バグ修正"

# 特定の文字列が追加・削除されたコミットを検索
git log -S "function login"

ヒント

  • git log --oneline --graph --all --decorate はブランチの全体像を把握するのに最適です。
  • git logless コマンドで表示されるため、/ で検索、q で終了できます。