2017-10-14 13:33:34 +00:00
|
|
|
# How to contribute
|
|
|
|
|
2017-12-10 12:01:28 +00:00
|
|
|
Bug reports and pull requests from users are what keep this project working.
|
2017-10-14 13:33:34 +00:00
|
|
|
|
|
|
|
## Basics
|
|
|
|
|
|
|
|
1. Create an issue and describe 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. Publish the branch (`git push origin my-new-feature`)
|
|
|
|
6. Create a new Pull Request
|
|
|
|
|
|
|
|
## Checking your work
|
|
|
|
|
|
|
|
You can test your workflow with changelog generator with
|
|
|
|
[the skywinder/changelog_test repo].
|
|
|
|
|
|
|
|
You can run the test suite.
|
|
|
|
|
|
|
|
You can run [RuboCop] to check code style.
|
|
|
|
|
|
|
|
The default Rake task, runnable using `rake`, calls `rubocop`, then `spec`.
|
|
|
|
|
|
|
|
[the skywinder/changelog_test repo]: https://github.com/skywinder/changelog_test/
|
|
|
|
[RuboCop]: http://rubocop.readthedocs.io/en/latest/
|
|
|
|
|
|
|
|
## Write documentation
|
|
|
|
|
|
|
|
This project has documentation in a few places:
|
|
|
|
|
|
|
|
### Introduction and usage
|
|
|
|
|
|
|
|
A friendly `README.md` written for many audiences.
|
|
|
|
|
|
|
|
### Examples and advanced usage
|
|
|
|
|
|
|
|
The [wiki].
|
|
|
|
|
|
|
|
### API documentation
|
|
|
|
|
|
|
|
API documentation is written as [YARD] docblocks in the Ruby code.
|
|
|
|
|
|
|
|
This is rendered as Web pages on [Rubydoc.info][github-changelog-generator on Rubydoc.info].
|
|
|
|
|
2017-12-09 11:07:40 +00:00
|
|
|
The completeness of the API documentation is measured on [our page on the Inch CI website][github-changelog-generator on Inch CI].
|
2017-10-14 13:33:34 +00:00
|
|
|
|
|
|
|
### man page
|
|
|
|
|
|
|
|
`man/git-generate-changelog.md`
|
|
|
|
|
|
|
|
The man page is for the `git generate-changelog` Git sub-command, which is a wrapper for `github_changelog_generator`. That file is a Markdown file.
|
|
|
|
|
|
|
|
Use the [ronn] gem to generate `.1` and `.html` artifacts like this: `cd man; ronn git-generate-changelog.md`
|
|
|
|
|
|
|
|
[wiki]: https://github.com/skywinder/github-changelog-generator/wiki
|
|
|
|
[YARD]: https://yardoc.org/
|
|
|
|
[github-changelog-generator on Rubydoc.info]: http://www.rubydoc.info/gems/github_changelog_generator
|
|
|
|
[ronn]: https://github.com/rtomayko/ronn
|
|
|
|
[github-changelog-generator on Inch CI]: https://inch-ci.org/github/skywinder/github-changelog-generator
|