Git Log コマンド

ドキュメント:

git-log | Git [Official]

使い方

ドキュメント:

コミット履歴の閲覧 | Pro Git book [Official]

参考:

Git Log 使い方 | transitive.info

Git Log コマンドでコミット履歴のリスト化 – Qiita

ログを確認する | YoheiM.NET

オプション

参考:

Git Log よく使うオプションまとめ – Qiita

Git Log のオプションあれこれ | 煙と消えるその前に

Git Log を見やすくしたい! – Qiita

条件指定してコミットを絞り込む | Yanor.net/Wiki

特定のユーザ (author / committer) のコミットログのみ表示 | dackdive’s blog

指定した件数だけ表示する

-n オプションに続いて最大表示件数を指定する。

$ git log -n 10

最新の1件だけ表示する。

$ git log -1

ドキュメント:

-n | Git Documentation [Official]

一行表示

コミットをそれぞれ一行ずつで表示する。

$ git log --oneline

ドキュメント:

--oneline | Git Documentation [Official]

範囲を絞り込む

指定したコミット以降の履歴を表示する。

$ git log 12345abcd..

特定のディレクトリ以下に変更があった履歴のみを表示する。

$ git log -- path/to/dir

参考:

Git でコミットログを絞り込んで表示する | まくまくノート

フォーマット

--pretty=format:"%h" ハッシュのみ表示する

--pretty=format:"%ad %C(yellow)%h%C(reset)%C(auto)%d%C(reset) %s" 日付ありで一行表示する

ドキュメント:

pretty-formats | Git [Official]

参考:

Git Log のフォーマットを指定する – Qiita

Git Log を見やすくする – Qiita

ログをシンプルにする | 忘れないようにメモを

Git Log の表示とか色をがんばる – Qiita

Git Log のエイリアスを設定 | 別館 子子子子子子 はてブロ部

コミットログの出力形式をカスタマイズする (git log --pretty, --date) | まくまくノート

美しき git log --graph のエイリアス | Hack Your Design!

Git Logs with Color and Graphs | Sweetmeat

How to Format Git Log to Generate Meaningful Information | Red Panthers

Git Log Format String Cheatsheet | Devhints

pretty format colors – Stack Overflow

How to emulate git log --decorate’s different colors per branch-type – Stack Overflow

How can I achieve separate colors for current, local, and remote ref names when using a custom Git Log format? – Super User

color in git-log – Stack Overflow

How to configure ‘git log’ to show ‘commit date’ – Stack Overflow

ツリー構造を表示する

参考:

美しき git log --graph のエイリアス | Hack Your Design!

Git Graph を使ってターミナルでツリー構造を表示する | ピクセルデザイン

日時のフォーマットを指定する

ドキュメント:

--date=<format> – git-log | Git [Official]

参考:

Git Log のフォーマットを指定する – Qiita

任意の日付フォーマットで Git Log を表示する – Qiita

Git Log の oneline オプションだと commit 日が表示されないのよね | IwazerReport

author date と commiter date そして GitHub | shigemk2

ログの日付を yyyy/MM/dd HH:mm:ss 形式にしたい – teratail

How to change Git Log date formats – Stack Overflow

日時の範囲を指定する

参考:

Git Log で特定の期間のログだけを出力する方法 | gotohayato

指定日からの作業内容をテキストファイルに出力したい | かもメモ

How to get Git to show commits in a specified date range for author date? – Stack Overflow

get commits since a particular date based on commit date – Stack Overflow

How does git log --since count? – Stack Overflow

git log の活用

  • -p オプション diff を表示する
  • パスの指定 git log -- **/*.rb
  • git log --word-diff 字句単位の diff

参考:

ファイルの変更履歴を確認/問題のコミットを特定! | WWW クリエイターズ

--name-only / --name-status

参考:

変更のあったファイル名を列挙する/内容の差分は表示しない – Qiita

削除/追加/変更されたファイル一覧を取得するには? – スタック・オーバーフロー

--stat

参考:

コミット間の変更ファイル一覧を出力 – Qiita

--diff-filter

参考:

削除されたファイルをコミット履歴から楽に探す便利コマンド | SUKEMATSU.NET

git diff のとき変更したファイルだけを確認する – Qiita

ソート順を指定する

ドキュメント:

Commit Ordering – git-log | Git [Official]

参考:

履歴を時間順にソートする | DQNEO 起業日記

Can you order Git Log by commit timestamp? – Stack Overflow

How can I make Git Log order based on author’s timestamp? – Stack Overflow

逆順に表示する

履歴を逆順に表示するには --reverse オプションを付与する。

使用例

特定のコミット以降を逆順に表示する。

$ git log --reverse --oneline 1234abc~..

参考:

コミットログを逆順/古い方から表示する (maeharin) – GitHub Gist

How do I find the next commit? (children of ref) – Stack Overflow

最初のコミットを確認する

最初のコミットのハッシュを表示する。

$ git rev-list --max-parents=0 HEAD

最初のコミットを確認する。

$ git log $(git rev-list --max-parents=0 HEAD)

参考:

How to show the first commit by ‘git log’? – Stack Overflow

コミットメッセージを grep する

--grep オプションを使う。

$ git log -i --oneline --grep sprockets

参考:

コミットメッセージで Git Log を検索する – Qiita

コミットメッセージを検索する方法/コミットログでフィルタリング | DQNEO 起業日記

How to Effectively Search the Git Log | Aurelien Navarre

Search git logs (case-insensitive) | commandlinefu.com

git grep コマンド

Git 管理されているファイルを grep する。

$ git grep -i sprockets

ドキュメント:

git-grep | Git [Official]

参考:

文字列検索、git grep と git log -S がとっても便利 – Qiita

ソースコードのコミット履歴を検索する方法 – スタック・オーバーフロー

How to grep (search) committed code in the Git history? – Stack Overflow

短縮ハッシュを確認する

HEAD の短縮ハッシュを表示する。

$ git log -1 --format=%h

SHA ハッシュの長さを指定して履歴を表示する。

$ git log -10 --oneline --abbrev=7

参考:

abbreviated format length – Stack Overflow

色を付けない

--no-color オプションを指定すると、出力に色が付かなくなる。

$ git log -10 --oneline --no-color

参考:

How to turn off color and remove the time in Git Log? – Stack Overflow

Don’t colorize the refs with git log --pretty when --no-color is specified – Stack Overflow

ファイルの差分が生じたコミットを検索する

-S オプションを指定すると、指定した文字列の出現回数に変更があったコミット (各ファイルにおいて追加・削除が相殺しないコミット) を探す。

$ git --no-pager log --oneline -i -S sprockets

-S オプション使用時に --pickaxe-regex オプションを付けると、正規表現として探索する。

$ git --no-pager log --oneline --pickaxe-regex -i -S 'webpack(er)?'

-G オプションを指定すると、差分の各行を正規表現で探索してヒットしたコミットを表示する。

$ git --no-pager log --oneline -i -G 'webpack(er)?'
オプション

-i パターンあるいは正規表現による探索で大文字小文字を区別しない

ドキュメント:

-S<string> – git-log | Git [Official]

--pickaxe-regex – git-log | Git [Official]

-G<regex> – git-log | Git [Official]

-i – git-log | Git [Official]

参考:

文字列検索、git grep と git log -S がとっても便利 – Qiita

コミットの差分の中身で絞り込む – Qiita

ログから特定の文字列を含むコミットを採掘する | Hack Your Design!

How to Effectively Search the Git Log | Aurelien Navarre

削除したファイルの履歴を探す

--diff-filter=D オプションを付けて git log コマンドを実行する。

$ git log --diff-filter=D --oneline -- path/to/file

参考:

過去に削除したファイルを検索、復元させる方法 | rcmdnk’s blog

削除済みのファイルを履歴から見つける方法 | Public Constructor

削除されたファイルをコミット履歴から楽に探す便利コマンド | SUKEMATSU.NET

削除したファイルの削除 commit まで探索する Git Log のオプションがあった | F.Shibusawa

特定のファイルをいつ削除したのか見つけ出す | えんぺる

ファイルがいつ削除されたかを特定する | PIYO

How to Find a Deleted File in the Project Commit History in Git | W3docs

How can I list all the deleted files in a Git repository? – Stack Overflow

How to find a deleted file in the project commit history? – Stack Overflow

差分を表示する

履歴と共に差分を表示する。

オプション
  • -p
  • -u
  • --patch

ドキュメント:

-p – git-log | Git [Official]

参考:

Ignore case differences with Git Log – Stack Overflow

まとめ

Git Log コマンドまとめ – Qiita

Git Log Times

git log にコミット日を差し込む。

参考:

git-log-times: A Oneline Log Alternative with Dates, Times and Initials (mackyle) – GitHub Gist

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA