I recently ran into a really awesome ruby project for creating Github Changelog files automatically. These files make it very easy for community members to quickly get up to speed and follow the development process of a project.

The best aspect to this is how simple it really is.

docker run -it --rm -v "$(pwd)":/usr/local/src/your-app \
    clburlison/github-changelog-generator \
    -u clburlison -p pinpoint \
    -t ${CHANGELOG_GITHUB_TOKEN}

That is all I run to get a nicely formatted Changelog file for my project. You can view a full sample in my clburlison/pinpoint repo. If you create tags, releases, milestones, and properly triage issues with labels the results will be very useful.

Sample Changelog Sample Changelog

Setup

Before you can use the project you will want to:

  1. Install docker
  2. Create a github token

Then run the above command making sure to change the strings after the -u and -p flags. Once all the requests are done a nicely formatted Changelog file will be written in your current working directory.

Note

Currently, I’m hosting my own docker container of the skywinder/github-changelog-generator repo while the maintainers decide what namespace they plan on using.