git log / git show の使い方

履歴を見る

書き方

git log [--oneline] [--graph] [--all] [-n 数]
git log --author=名前 --grep=語 -- ファイル
git log -S 語 / -G 正規表現
git log --format='%h %an %s'
git show [コミット]
git show コミット:ファイル

新しい順にコミットを表示します。--oneline で 1 行ずつ、--graph で枝分かれ。show はコミットの中身(差分)を見ます。

よく使うオプション

オプション意味
--oneline1 コミットを 1 行で出す
--graph枝分かれを線で描く
--allすべてのブランチの履歴を出す
-n 数新しいほうから、その数だけ出す
--author=名前作者でしぼる
--grep=語メッセージに語を含むものでしぼる
-S 語その語を足したり消したりしたコミットを探す
-pそれぞれの差分も出す

例

$ git log --oneline --graph --all* 9c1e2f4 (HEAD -> main) メニューを足す
| * 5b7d3a1 (feature) 検索を作る
|/
* 2a4f6c8 最初のコミット

すべてのブランチの履歴を、枝分かれの図つきで 1 行ずつ見ます。

$ git log -n 3

新しいほうから 3 つのコミットを、作者・日時・メッセージつきで見ます。

$ git log --oneline -- config.yml

config.yml を変えたコミットだけを見ます。-- の後ろにファイルを書きます。

$ git log -S timeout --oneline

timeout という語を足したり消したりしたコミットを探します。いつ入った設定かを調べるのに使います。

$ git show HEADcommit 9c1e2f4…
Author: Taro Yamada <taro@example.com>

    メニューを足す

diff --git a/menu.html b/menu.html

最新のコミットの中身(メッセージと差分)を見ます。

よくある間違い・注意

  • 履歴が長いと less で開きます。q で閉じます。
  • --all を付けないと、今いるブランチから辿れるコミットしか出ません。ほかのブランチが見えないときは付けます。

実際に打って練習する

Git コースの Lv6「歴史を読む git log」で覚えます(第1章 はじめての記録)。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

Lv1〜10 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。

Git コマンド一覧(使い方と例)へ戻る