Automatically generate change log from your tags, issues, labels and pull requests on GitHub.
Go to file
Petr Korolev a33b52d6d0 typo fix
2014-11-10 14:39:31 +02:00
bin make it executable + man fix 2014-11-06 18:59:06 +02:00
lib add option that close #11 2014-11-10 14:36:27 +02:00
.gitignore clean gitignore file 2014-11-07 13:21:54 +02:00
bump_gemfile.rb typo fix 2014-11-10 14:39:31 +02:00
CHANGELOG.md update changelog 2014-11-07 18:35:59 +02:00
Gemfile add gemfiles 2014-11-06 15:18:07 +02:00
Gemfile.lock add gemfiles 2014-11-06 15:18:07 +02:00
github_changelog_generator.gemspec Update to version 1.0.1 2014-11-10 13:36:15 +02:00
README.md Update to version 1.0.1 2014-11-10 13:36:15 +02:00

GitHub Changelog Generator

Gem Version

Changelog generation has never been so easy.

This script automatically generate change-log from your tags and merged pull-requests.

Installation:

[sudo] gem install github_changelog_generator

Usage

github_changelog_generator -u github-username -p github-project

In output you will get CHANGELOG.md file with pretty Markdown-formatted changelogs in your current directory.

Params:

See github_changelog_generator --help for detailed usage.

Usage: changelog_generator --user username --project project_name [options]
    -u, --user [USER]                Username of the owner of target GitHub repo (required)
    -p, --project [PROJECT]          Name of project on GitHub (required)
    -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
        --[no-]issues                Include closed issues 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'a

Examples:

Look at changelog in this project!

This changelog: ActionSheetPicker-3.0/CHANGELOG.md

Was generated by command:

github_changelog_generator -u skywinder -p ActionSheetPicker-3.0

FAQ:

Since GitHub allow to make only 50 requests without authentication it's recommended to run this scrip with key -t [your-16-digit-token] that you can easily generate it here.

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': GET 89678f7d7f: 403 API rate limit exceeded for 195.88.177.9. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.) (Github::Error::Forbidden)

It's time to generate this token or wait for 1 hour before GitHub reset counter for your IP.

License

Github the Generator is released under the MIT License.

Contributing

  1. Create an issue to discuss about your idea
  2. [Fork it] (https://github.com/skywinder/Github-Changelog-Generator/fork)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

Bug reports, feature requests, patches, well-wishes, and rap demo tapes are always welcome!

Improvements more than welcome - they are kindly requested! :)