All contributions are welcome! Just make sure you follow these guidelines and your change/fix/improvement should be accepted without any problems.
- File an issue if you've found a bug, want to request an improvement, or want to implement new functionality yourself. Make sure to check no one else has created a similar ticket!
- Create a pull request and make sure your commit includes the issue number
Before writing any code, make sure to create an issue that describes what you'd like to add, improve or fix. Doing so allows us to give you any feedback before starting, as it may already be something we've started or maybe even already done, hidden away and undocumented (whoops).
This will allow you to branch off and write your change against a separate codebase.
The upstream remote is the original project under the ManyWho GitHub organization. To add the upstream remote:
$ git remote add upstream git@github.com:manywho/service-example.git # Replace the repository with the correct URL
Make sure to give your branch a descriptive name that starts with feature
and includes the issue number,
e.g. feature/123-add-contact-type
.
While you're writing code, make sure to push atomic commits to your fork. Also, be sure to include your issue number
and a description of your change in the commit message, e.g. #123: Added a new Contact type
or #234: Fixed a null pointer when loading single items from the API
.
Don't forget unit/functional tests, and remember that different issues go on separate feature branches!
Before creating your pull request, rebase your fork against the upstream remote to get the latest changes which will help minimise merge issues:
$ git fetch upstream
$ git rebase upstream/develop
Make sure that your code (and any merged changes) still pass all unit tests:
$ mvn test
Create a pull request from your feature branch, that includes a description of your change. There should only be one issue per pull request.