Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Automatically write changelog to CHANGELOG.md in GitHub

Is there any way to automatically generate change logs from commit messages to a file called CHANGELOG.md in a GitHub repo?

Might be possible using a service hook on a repo?

like image 315
keto23 Avatar asked May 18 '13 01:05

keto23


People also ask

How do I make changelog automatically?

Auto-Generate ChangelogFollow the Conventional Commits Specification in your repository. We will use @commitlint/config-conventional to enforce this via Git hooks. Use standard-version, a utility for versioning using SemVer and changelog generation powered by Conventional Commits.

How do I convert a changelog to a conventional commit?

Conventional Commits makes generating a changelog easy by creating a release that uses semantic versioning. Let's examine the detail of the structure: <type> is a type of commit that affects the version number of the release. In semantic versioning, the fix type affects PATCH and the feat type affects MINOR.

What is conventional changelog?

conventional-changelog: a set of tools for parsing Conventional Commits messages from git histories. parse-commit-message: Extensible utilities for parsing, stringify and validating Conventional Commit messages.


2 Answers

I have written something like this some months ago. It is based on Git's porcelain and uses a git hook in plain bash.

You can find it in my Github Repo.

like image 183
Martin Seeler Avatar answered Oct 04 '22 05:10

Martin Seeler


I have created a GitHub app 'Changelogg.io' to automate changelog from merged pull requests.

It detects changes mentioned in the PRs and creates a release draft for it. After adding the release version, it automatically updates CHANGELOG.md and also has a web UI with filters for the generated changelog. Few other features:

  • Insights generated from changes (Stats like bugs to feature ratio, Trend over time for repository)
  • Slack Integration for each repository

Youtube Walkthrough

like image 32
mukul Avatar answered Oct 04 '22 05:10

mukul