Git Log Formatter / Prettifier
Turn raw `git log` output into a clean Markdown table, bullet list, one-line summary, or JSON. Parses the default commit/Author/Date block format, `--pretty=fuller`, and `--oneline`, with optional date reformatting (ISO, short, RFC 2822).
Input
Options
Auto-detect handles the default block format and --oneline. Force one if detection guesses wrong.
Output
Guides
Raw git log output is dense and hard to read — walls of full 40-character
hashes, verbose Author:/Date: headers, and indented commit bodies. This tool
parses that output and re-formats it into something you can actually use: a clean
Markdown table, a bullet list, a compact one-line-per-commit summary, or a
structured JSON array. Paste your log on the left and the formatted result
appears instantly — everything runs in your browser, so your commit history never
leaves your machine.
How to use it
- In your terminal, run a
git logcommand and copy the output. The defaultgit log,git log --pretty=fuller, andgit log --onelineare all supported. - Paste it into the Git Log Output box.
- Pick an Output Style and, optionally, a Date Format.
- Copy or download the formatted result.
The tool auto-detects whether you pasted the standard block format or --oneline
output. If detection guesses wrong, force the format with the Input Format
dropdown.
Output styles
- Markdown table — a
| Hash | Author | Date | Subject |table, ready to paste into a README, pull-request description, or release notes. - Markdown list — one bullet per commit: short hash, subject, and author/date. Great for changelogs.
- One line per commit — a terse
hash subject (author, date)summary, close togit log --onelinebut with author and date attached. - JSON array — one object per commit with
hash,shortHash,subject,author,date,body, and more. Feed it into scripts or release tooling.
Columns adapt to your data: author and date columns only appear when the parsed
commits actually contain them, so --oneline input stays compact.
Date formatting
Git's default date string (Thu Oct 10 13:55:36 2024 -0700) is long. Choose a
Date Format to rewrite it:
- ISO 8601 —
2024-10-10 13:55:36 - Short date —
2024-10-10 - RFC 2822 —
Thu, 10 Oct 2024 13:55:36 -0700
Dates are reformatted from their written components, so the result is identical no matter where the tool runs and never shifts by your local timezone.
Does it upload my commit history?
No. Parsing and formatting happen entirely client-side in JavaScript. Nothing you paste is sent to a server.
Which git log formats work?
The default commit/Author/Date block format, --pretty=fuller (with
AuthorDate/CommitDate), and --oneline. Merge lines and ref decorations such
as (HEAD -> main, origin/main) are recognized too.
Why do some lines say they "could not be parsed"?
The summary reports any lines that didn't match a recognized commit shape — often
diff hunks or stray output mixed into the log. Re-run git log without -p or
extra flags for the cleanest input.