Skip to content
100% local

Changelog generator

Turn a pasted git log into a grouped, readable changelog.

Input

Changelog generator

Paste the output of "git log" or "git log --oneline" and this tool turns it into a changelog you can drop straight into a release, a CHANGELOG.md file or a pull request description. It reads both the default multi-line git log format (with Author: and commit headers) and the compact one-line format, so you can copy either straight from your terminal.

Commits are grouped by type or by scope. Detect types automatically from Conventional Commits prefixes (feat, fix, docs, chore and the rest), or supply your own prefix-to-label mapping when your team uses a different convention. Merge commits and chores can be filtered out with a checkbox, so the changelog only shows what actually changed for users. Choose Markdown output that follows the Keep a Changelog format, or a plain grouped list with no markup at all.

Turn on ticket linking to convert references like #123 or PROJ-42 into links, using a URL template with an {id} placeholder. Author names are picked up automatically when your log format includes them, and breaking changes — marked with a trailing "!" in the type or a "BREAKING CHANGE:" footer — are pulled into their own section at the top when highlighting is on. Add a version and date to generate a proper release heading.

Everything runs locally in your browser: your commit history is never uploaded anywhere, which matters for private repositories. The result updates as you type or change an option, and you can copy it, download it as a .txt file, or send it straight into another tool.

FAQ

Which git log formats are supported?
Both the default "git log" output (commit/Author/Date blocks with an indented message) and "git log --oneline". Paste either one directly from your terminal.
How are commit types detected?
By default it looks for Conventional Commits prefixes like "feat:" or "fix(scope):". Switch to custom prefixes and list your own prefix=Label pairs if your project uses a different convention.
How does ticket linking work?
Enter a URL template containing {id}, such as https://github.com/org/repo/issues/{id}. References like #123 or PROJ-42 found in a commit subject are turned into links using that template.
What counts as a breaking change?
A type followed by "!" (like "feat!:") or a "BREAKING CHANGE:" line in the commit body, when pasting the full git log format. With highlighting on, these are grouped into their own section at the top.
Is my commit history uploaded anywhere?
No. The changelog is generated entirely in your browser — your git log never leaves your device.