diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000000..112663372a --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,124 @@ +# Contributing + +We always welcome contributions to help make WhereHows better. Take a moment to read this document if you would like to contribute. + +## Reporting issues + +We use GitHub issues to track bug reports, feature requests, and submitting pull requests. + +If you find a bug: + +1. Use the GitHub issue search to check whether the bug has already been reported. + +1. If the issue has been fixed, try to reproduce the issue using the latest master branch of the repository. + +1. If the issue still reproduces or has not yet been reported, try to isolate the problem before opening an issue. + +## Submitting a Pull Request (PR) + +Before you submit your Pull Request (PR), consider the following guidelines: + +* Search GitHub for an open or closed PR that relates to your submission. You don't want to duplicate effort. +* Make your changes in a new branch: + +``` + git checkout -b my-fix-branch master +``` + +* Create your patch, *including appropriate test cases*. +* Run the test suite +* Commit your changes using a descriptive commit message that follows our [commit message format](#commit-message-format). + +``` + git commit -a +``` + +Note: The optional commit -a command-line option will automatically "add" and "rm" edited files. + +* Push your branch to GitHub: + + git push origin my-fix-branch + +* In GitHub, send a pull request to `Wherehows:master` +* If we suggest changes, then: + * Make the required updates. + * Re-run the test suite + * Rebase your branch and force push to your GitHub repository (this will update your Pull Request) + +``` + git rebase master -i + git push -f +``` + +That's it! Thank you for your contribution! + +## After your pull request is merged + +After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository: + +* Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows: + +``` + git push origin --delete my-fix-branch +``` + +* Check out the master branch: + +``` + git checkout master -f +``` + +* Update your master with the latest upstream version: + +``` + git pull --ff upstream master +``` + +## Commit Message Format + +Each commit message consists of a *header*, a *body* and a *footer*. The header has a special formation that includes a *type*, a *scope*, and a *subject*: + + : + + + +