Any contribution is highly appreciated. We need contributors to follow this guideline to keep the project manageable.
- Make sure you have a GitHub account
- Submit a ticket for your issue, assuming one does not already exist.
- Clearly describe the issue including steps to reproduce when it is a bug.
- Make sure you fill in the earliest version that you know has the issue.
- Fork the repository on GitHub
- See the "Setup development environment" section of the README
- Create a topic branch from where you want to base your work.
- This is usually the
develop
branch for new features and themaster
branch for bug fixes. - To quickly create a topic branch based on develop;
git checkout -b fix/master/my_contribution master
. Please avoid working directly on themaster
branch.
- This is usually the
- Make commits of logical units.
- Check for unnecessary whitespace with
git diff --check
before committing. - Make sure your commit messages are in the proper format. See the seven rules in this blog post. Do not forget to reference your ticket by its number (e.g. Fix #23)
- Make sure you have added the necessary tests for your changes.
- Run all the tests to assure nothing else was accidentally broken.
- Make sure to add proper documentation
For changes of a trivial nature to comments and documentation, it is not always necessary to create a new ticket.
- Push your changes to a topic branch in your fork of the repository.
- Submit a pull request to the base repository.
- Sign the Contributor License Agreement that will be added as a comment to your Pull Request.
- Wait for the core developers to comment on your pull request or directly merge it.
- After feedback has been given we expect responses within two weeks. After two weeks we may close the pull request if it isn't showing any activity.
- This document is derived from the puppet CONTRIBUTING guidelines