Automatically generate changelog from your tags, closed issues and merged pull requests.
This project is maintained by skywinder
Changelog generation has never been so easy.
This script automatically generate change-log from your tags and merged pull-requests.
[sudo] gem install github_changelog_generator
It's really simple:
cd
to your Project folder with configured git and just type:
github_changelog_generator
from anywhere:
github_changelog_generator -u github-username -p github-project
As output you will get CHANGELOG.md
file with pretty Markdown-formatted changelog.
Type github_changelog_generator --help
for detailed usage.
Usage: changelog_generator [options]
-u, --user [USER] Username of the owner of target GitHub repo
-p, --project [PROJECT] Name of project on GitHub
-t, --token [TOKEN] To make more than 50 requests this script required your OAuth token for GitHub. You can generate it on https://github.com/settings/applications
-h, --help Displays Help
-v, --[no-]verbose Run verbosely. Default is true
--[no-]issues Include closed issues to changelog. Default is true
--[no-]issues-without-labels Include closed issues without any labels to changelog. Default is true
--[no-]pull-requests Include pull-requests to changelog. Default is true
-l, --last-changes Generate log between last 2 tags only
-f, --date-format [FORMAT] Date format. Default is %d/%m/%y
-o, --output [NAME] Output file. Default is CHANGELOG.md
--labels x,y,z List of labels. Issues with that labels will be included to changelog. Default is 'bug,enhancement'
This changelog: ActionSheetPicker-3.0/CHANGELOG.md was generated by command:
github_changelog_generator -u skywinder -p ActionSheetPicker-3.0
Since GitHub allow to make only 50 requests without authentication it's recommended to run this script with token
You can easily generate it here.
And:
-t [your-16-digit-token]
that Or set environment variable CHANGELOG_GITHUB_TOKEN
and specify there your token.
i.e. add to your ~/.bash_profile
or ~/.zshrc
or any other place to load ENV variables string export CHANGELOG_GITHUB_TOKEN="your-40-digit-github-token"'
So, if you got error like this:
! /Library/Ruby/Gems/2.0.0/gems/github_api-0.12.2/lib/github_api/response/raise_error.rb:14:in `on_complete'
It's time to create this token or wait for 1 hour before GitHub reset the counter for your IP.
Nothing is impossible! Open an issue and let's make generator better together!
Bug reports, feature requests, patches, well-wishes are always welcome!
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)Github Changelog Generator is released under the MIT License.