1*58b9f456SAndroid Build Coastguard Worker# How to contribute # 2*58b9f456SAndroid Build Coastguard Worker 3*58b9f456SAndroid Build Coastguard WorkerWe'd love to accept your patches and contributions to this project. There are 4*58b9f456SAndroid Build Coastguard Workera just a few small guidelines you need to follow. 5*58b9f456SAndroid Build Coastguard Worker 6*58b9f456SAndroid Build Coastguard Worker 7*58b9f456SAndroid Build Coastguard Worker## Contributor License Agreement ## 8*58b9f456SAndroid Build Coastguard Worker 9*58b9f456SAndroid Build Coastguard WorkerContributions to any Google project must be accompanied by a Contributor 10*58b9f456SAndroid Build Coastguard WorkerLicense Agreement. This is not a copyright **assignment**, it simply gives 11*58b9f456SAndroid Build Coastguard WorkerGoogle permission to use and redistribute your contributions as part of the 12*58b9f456SAndroid Build Coastguard Workerproject. 13*58b9f456SAndroid Build Coastguard Worker 14*58b9f456SAndroid Build Coastguard Worker * If you are an individual writing original source code and you're sure you 15*58b9f456SAndroid Build Coastguard Worker own the intellectual property, then you'll need to sign an [individual 16*58b9f456SAndroid Build Coastguard Worker CLA][]. 17*58b9f456SAndroid Build Coastguard Worker 18*58b9f456SAndroid Build Coastguard Worker * If you work for a company that wants to allow you to contribute your work, 19*58b9f456SAndroid Build Coastguard Worker then you'll need to sign a [corporate CLA][]. 20*58b9f456SAndroid Build Coastguard Worker 21*58b9f456SAndroid Build Coastguard WorkerYou generally only need to submit a CLA once, so if you've already submitted 22*58b9f456SAndroid Build Coastguard Workerone (even if it was for a different project), you probably don't need to do it 23*58b9f456SAndroid Build Coastguard Workeragain. 24*58b9f456SAndroid Build Coastguard Worker 25*58b9f456SAndroid Build Coastguard Worker[individual CLA]: https://developers.google.com/open-source/cla/individual 26*58b9f456SAndroid Build Coastguard Worker[corporate CLA]: https://developers.google.com/open-source/cla/corporate 27*58b9f456SAndroid Build Coastguard Worker 28*58b9f456SAndroid Build Coastguard WorkerOnce your CLA is submitted (or if you already submitted one for 29*58b9f456SAndroid Build Coastguard Workeranother Google project), make a commit adding yourself to the 30*58b9f456SAndroid Build Coastguard Worker[AUTHORS][] and [CONTRIBUTORS][] files. This commit can be part 31*58b9f456SAndroid Build Coastguard Workerof your first [pull request][]. 32*58b9f456SAndroid Build Coastguard Worker 33*58b9f456SAndroid Build Coastguard Worker[AUTHORS]: AUTHORS 34*58b9f456SAndroid Build Coastguard Worker[CONTRIBUTORS]: CONTRIBUTORS 35*58b9f456SAndroid Build Coastguard Worker 36*58b9f456SAndroid Build Coastguard Worker 37*58b9f456SAndroid Build Coastguard Worker## Submitting a patch ## 38*58b9f456SAndroid Build Coastguard Worker 39*58b9f456SAndroid Build Coastguard Worker 1. It's generally best to start by opening a new issue describing the bug or 40*58b9f456SAndroid Build Coastguard Worker feature you're intending to fix. Even if you think it's relatively minor, 41*58b9f456SAndroid Build Coastguard Worker it's helpful to know what people are working on. Mention in the initial 42*58b9f456SAndroid Build Coastguard Worker issue that you are planning to work on that bug or feature so that it can 43*58b9f456SAndroid Build Coastguard Worker be assigned to you. 44*58b9f456SAndroid Build Coastguard Worker 45*58b9f456SAndroid Build Coastguard Worker 1. Follow the normal process of [forking][] the project, and setup a new 46*58b9f456SAndroid Build Coastguard Worker branch to work in. It's important that each group of changes be done in 47*58b9f456SAndroid Build Coastguard Worker separate branches in order to ensure that a pull request only includes the 48*58b9f456SAndroid Build Coastguard Worker commits related to that bug or feature. 49*58b9f456SAndroid Build Coastguard Worker 50*58b9f456SAndroid Build Coastguard Worker 1. Do your best to have [well-formed commit messages][] for each change. 51*58b9f456SAndroid Build Coastguard Worker This provides consistency throughout the project, and ensures that commit 52*58b9f456SAndroid Build Coastguard Worker messages are able to be formatted properly by various git tools. 53*58b9f456SAndroid Build Coastguard Worker 54*58b9f456SAndroid Build Coastguard Worker 1. Finally, push the commits to your fork and submit a [pull request][]. 55*58b9f456SAndroid Build Coastguard Worker 56*58b9f456SAndroid Build Coastguard Worker[forking]: https://help.github.com/articles/fork-a-repo 57*58b9f456SAndroid Build Coastguard Worker[well-formed commit messages]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html 58*58b9f456SAndroid Build Coastguard Worker[pull request]: https://help.github.com/articles/creating-a-pull-request 59