| # 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. |
| |
| ## Code reviews |
| |
| All submissions, including submissions by project members, require review. We |
| use [Dawn's Gerrit](https://dawn-review.googlesource.com/) for this purpose. |
| |
| Submissions should follow the [Tint style guide](docs/style_guide.md). |
| |
| ## Pushing to Gerrit |
| |
| Each change requires a `Change-Id` field in the commit message, which is generated by the [Gerrit commit-msg hook](](https://gerrit-review.googlesource.com/Documentation/cmd-hook-commit-msg.html)). \ |
| In a bash terminal, with the current path set to your tint source tree, this can be obtained by running the following: |
| |
| ```bash |
| f=`git rev-parse --git-dir`/hooks/commit-msg ; mkdir -p $(dirname $f) ; curl -Lo $f https://gerrit-review.googlesource.com/tools/hooks/commit-msg ; chmod +x $f |
| ``` |
| |
| If you've already locally committed a change without the `Change-Id`, running `git commit --amend` will add the missing `Change-Id`. |
| |
| To create a Gerrit change for review, type: |
| |
| ```bash |
| git push origin HEAD:refs/for/main |
| ``` |
| |
| ## Community Guidelines |
| |
| This project follows |
| [Google's Open Source Community Guidelines](https://opensource.google.com/conduct/). |