| # How to Contribute |
| |
| We'd love to accept your patches and contributions to this project. There are |
| just a few small guidelines you need to follow. |
| |
| ## Contributor License Agreement |
| |
| Contributions to this project must be accompanied by a Contributor License |
| Agreement. You (or your employer) retain the copyright to your contribution; |
| this simply gives us permission to use and redistribute your contributions as |
| part of the project. Head over to <https://cla.developers.google.com/> to see |
| your current agreements on file or to sign a new one. |
| |
| You generally only need to submit a CLA once, so if you've already submitted one |
| (even if it was for a different project), you probably don't need to do it |
| again. |
| |
| ## Changes Accepted |
| |
| Please file issues before doing substantial work; this will ensure that others |
| don't duplicate the work and that there's a chance to discuss any design issues. |
| |
| Changes only tweaking style are unlikely to be accepted unless they are applied |
| consistently across the project. Most of the code style is derived from the |
| [Google Style Guides](http://google.github.io/styleguide/) for the appropriate |
| language and is generally not something we accept changes on (as clang-format |
| and clang-tidy handle that for us). Improvements to code structure and clarity |
| are welcome but please file issues to track such work first. |
| |
| ## Code reviews |
| |
| All submissions, including submissions by project members, require review. We |
| use GitHub pull requests (PRs) for this purpose. Consult |
| [GitHub Help](https://help.github.com/articles/about-pull-requests/) for more |
| information on using pull requests. |
| |
| Each PR will be merged into the master branch as a single commit by our |
| automation workflow with a description matching the initial PR |
| comment/description. Please keep PRs small (focused on a single issue) to |
| streamline review and ease later culprit-finding. |
| |
| ## Community Guidelines |
| |
| This project follows |
| [Google's Open Source Community Guidelines](https://opensource.google.com/conduct/). |