Blame CONTRIBUTING.md

Packit 18d29c
# How to contribute #
Packit 18d29c
Packit 18d29c
We'd love to accept your patches and contributions to this project.  There are
Packit 18d29c
a just a few small guidelines you need to follow.
Packit 18d29c
Packit 18d29c
Packit 18d29c
## Contributor License Agreement ##
Packit 18d29c
Packit 18d29c
Contributions to any Google project must be accompanied by a Contributor
Packit 18d29c
License Agreement.  This is not a copyright **assignment**, it simply gives
Packit 18d29c
Google permission to use and redistribute your contributions as part of the
Packit 18d29c
project.
Packit 18d29c
Packit 18d29c
  * If you are an individual writing original source code and you're sure you
Packit 18d29c
    own the intellectual property, then you'll need to sign an [individual
Packit 18d29c
    CLA][].
Packit 18d29c
Packit 18d29c
  * If you work for a company that wants to allow you to contribute your work,
Packit 18d29c
    then you'll need to sign a [corporate CLA][].
Packit 18d29c
Packit 18d29c
You generally only need to submit a CLA once, so if you've already submitted
Packit 18d29c
one (even if it was for a different project), you probably don't need to do it
Packit 18d29c
again.
Packit 18d29c
Packit 18d29c
[individual CLA]: https://developers.google.com/open-source/cla/individual
Packit 18d29c
[corporate CLA]: https://developers.google.com/open-source/cla/corporate
Packit 18d29c
Packit 18d29c
Once your CLA is submitted (or if you already submitted one for
Packit 18d29c
another Google project), make a commit adding yourself to the
Packit 18d29c
[AUTHORS][] and [CONTRIBUTORS][] files. This commit can be part
Packit 18d29c
of your first [pull request][].
Packit 18d29c
Packit 18d29c
[AUTHORS]: AUTHORS
Packit 18d29c
[CONTRIBUTORS]: CONTRIBUTORS
Packit 18d29c
Packit 18d29c
Packit 18d29c
## Submitting a patch ##
Packit 18d29c
Packit 18d29c
  1. It's generally best to start by opening a new issue describing the bug or
Packit 18d29c
     feature you're intending to fix.  Even if you think it's relatively minor,
Packit 18d29c
     it's helpful to know what people are working on.  Mention in the initial
Packit 18d29c
     issue that you are planning to work on that bug or feature so that it can
Packit 18d29c
     be assigned to you.
Packit 18d29c
Packit 18d29c
  1. Follow the normal process of [forking][] the project, and setup a new
Packit 18d29c
     branch to work in.  It's important that each group of changes be done in
Packit 18d29c
     separate branches in order to ensure that a pull request only includes the
Packit 18d29c
     commits related to that bug or feature.
Packit 18d29c
Packit 18d29c
  1. Do your best to have [well-formed commit messages][] for each change.
Packit 18d29c
     This provides consistency throughout the project, and ensures that commit
Packit 18d29c
     messages are able to be formatted properly by various git tools.
Packit 18d29c
Packit 18d29c
  1. Finally, push the commits to your fork and submit a [pull request][].
Packit 18d29c
Packit 18d29c
[forking]: https://help.github.com/articles/fork-a-repo
Packit 18d29c
[well-formed commit messages]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
Packit 18d29c
[pull request]: https://help.github.com/articles/creating-a-pull-request