1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

git log を見やすくする

Last updated at Posted at 2025-01-10

git log (デフォルト)

ScreenShot 2025-01-10 16.35.49.png

コミットの詳細が見たい場合は git show で個別に見るから要らない。一覧性を高めたい。

(例でsvelteのリポジトリのログを出してます)

git log --oneline (デフォルト)

ScreenShot 2025-01-10 16.40.19.png

情報量が少ない。日付とコミッター名は欲しい。

git log (改善版)

ScreenShot 2025-01-10 16.35.35.png

コミット名 日付(相対) コミッター名 リファレンス コミットメッセージ

を表示するようにしています。

~/.gitconfig に追記します。

~/.gitconfig
[log]
    date = relative
[format]
    pretty = format:%C(yellow)%h %C(blue)%>(12)%ad %C(green)%<(8)%aN %C(red)%d %C(reset)%s

日付を表示したい人は次のフォーマットにすると良いです。

[log]
    date = format:%Y-%m-%d %H:%M

コミット見たい時に秒まではいらないと思うので分まで表示にしてます。

オプションの解説

[log]
    date = relative

通常絶対時刻が表示されますが、 relative にすると「2 days ago」「3 hours ago」といった人間が読みやすい相対時刻になります。

[format]
    pretty = format:%C(yellow)%h %C(blue)%>(12)%ad %C(green)%<(8)%an %C(red)%d %C(reset)%s

pretty = format:... はログ表示に使う書式を定義します。
横一列だと見づらいですが、全体の構造は以下のとおりです。

%C(yellow)%h # 黄色で短いコミットハッシュ(先頭7桁)を表示
%C(blue)%>(12)%ad # 青色で右寄せで幅12文字分を取って日付を表示([log] dateで指定したフォーマット)
%C(green)%<(8)%an # 緑色で左寄せで幅8文字分取ってコミット作成者の名前を表示
%C(red)%d # 赤色でコミットに付随するリファレンス(ブランチ名、タグ名)を表示
%C(reset)%s # 色をリセットしてデフォルトの白色でコミットメッセージの件名を表示
  • %C(red)%d%C(auto)%d にするとブランチ名やタグ名も色分けされますが、個人的にごちゃごちゃ感がしたので赤一色にしています
  • %Cred%d 括弧付ける必要はないのですが、見やすいので括弧付けてます
  • 相対日付を表示してますが、具体的な日時がわからないデメリットもあるので、別にエイリアス定義しても良いかもと思ってます

グラフ表示のエイリアス

~/.gitconfig
[alias]
    tree = log --graph --pretty=format:'%C(yellow)%h %C(blue)%ad %C(green)%cn %C(magenta)%d %C(reset)%s'
$ git tree

コミットログのフォーマットについて

カスタマイズしたい人はこちらを参照ください。
https://git-scm.com/docs/pretty-formats

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?