How to use the Changelog Generator
- Run the
git logcommand shown above in your repository and paste the output (hash + subject per line). - Enter the current version; the release version is suggested from the commits — or type your own.
- Choose Conventional or Keep a Changelog headings and add your repository URL to link commit hashes.
- Copy the Markdown to the top of your
CHANGELOG.mdor into a GitHub release.
Conventional Commits in 30 seconds
Each commit subject starts with a type, an optional scope and a description: feat(cart): add coupon field. A ! after the type/scope or a BREAKING CHANGE: note marks a breaking change.
| Type | Section | Version bump |
|---|---|---|
feat | Features / Added | Minor |
fix | Bug Fixes / Fixed | Patch |
perf | Performance | Patch |
feat!, BREAKING CHANGE | Breaking Changes | Major |
refactor, docs, style, test, build, ci, chore | Other / hidden | None |
revert | Reverts | Patch |
Keep a Changelog
Keep a Changelog groups entries for humans under Added, Changed, Deprecated, Removed, Fixed, Security, newest release first, with an Unreleased section at the top. Choose that style if your users read the changelog rather than developers.
From changelog to release
Check the suggested version with the Semantic Version Calculator, update version in your package.json, then tag and push the release — the Git Command Generator has the commands. A GitHub Actions workflow can build and publish on every tag.
Tools that pair well with the Changelog Generator
- README Generator — Fill in a few fields and get a clean, GitHub-ready README.md — badges, installation, usage example, configuration table, environment variables, roadmap and license — with a live preview and a completeness check.
- .gitignore Generator — Tick your stack — Node, Python, React, Next.js, Docker, macOS, VS Code and 40 more — and get one clean, de-duplicated .gitignore with commented sections, ready to download.
- .env File Validator — Paste a .env file to find invalid keys, duplicates, empty values and quoting mistakes, compare it with .env.example to spot missing variables, and generate a safe example file.
- .editorconfig Generator — Make every editor on your team use the same indentation, line endings and charset.
Frequently asked questions
What git log format should I paste?
git log --pretty=format:"%h %s". Plain subjects without hashes work too. Merge commits are skipped automatically.