| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 1 | ## How to contribute |
| 2 | |
| Konrad Grochowski | 23b60b5 | 2014-10-02 17:25:47 +0200 | [diff] [blame] | 3 | 1. Make sure your issue is not all ready in the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT) |
| 4 | 1. If not, create a ticket describing the change you're proposing in the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT) |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 5 | 1. Contribute your patch using one of the two methods below |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 6 | |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 7 | ### Contributing via a patch |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 8 | |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 9 | 1. Check out the latest version of the source code |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 10 | |
| 11 | * git clone https://git-wip-us.apache.org/repos/asf/thrift.git thrift |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 12 | |
| 13 | 1. Modify the source to include the improvement/bugfix |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 14 | |
| 15 | * Remember to provide *tests* for all submited changes |
| 16 | * When bugfixing: add test that will isolate bug *before* applying change that fixes it |
| 17 | * Verify that you follow [Thrift Coding Standards](/coding_standards) (you can run 'make style', which ensures proper format for some languages) |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 18 | |
| 19 | 1. Create a patch from project root directory (e.g. you@dev:~/thrift $ ): |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 20 | |
| 21 | * git diff > ../thrift-XXX-my-new-feature.patch |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 22 | |
| 23 | 1. Attach the newly generated patch to the issue |
| 24 | 1. Wait for other contributors or committers to review your new addition |
| 25 | 1. Wait for a committer to commit your patch |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 26 | |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 27 | ### Contributing via GitHub pull requests |
| 28 | |
| 29 | 1. Create a fork for http://github.com/apache/thrift |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 30 | 1. Create a branch for your changes |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 31 | 1. Modify the source to include the improvement/bugfix |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 32 | |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 33 | * Remember to provide *tests* for all submited changes |
| 34 | * When bugfixing: add test that will isolate bug *before* applying change that fixes it |
| 35 | * Verify that you follow [Thrift Coding Standards](/coding_standards) (you can run 'make style', which ensures proper format for some languages) |
| 36 | |
| 37 | 1. Commit and push changes to your branch |
| 38 | 1. Issue a pull request with the jira ticket number you are working on in it's name |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 39 | 1. Wait for other contributors or committers to review your new addition |
| 40 | 1. Wait for a committer to commit your patch |
| 41 | |
| 42 | ### More info |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 43 | |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 44 | Plenty of information on why and how to contribute is available on the Apache Software Foundation (ASF) web site. In particular, we recommend the following: |
| Konrad Grochowski | 3bc6424 | 2015-02-04 16:43:26 +0100 | [diff] [blame^] | 45 | |
| jfarrell | 347a5eb | 2014-04-05 12:20:07 -0400 | [diff] [blame] | 46 | * [Contributors Tech Guide](http://www.apache.org/dev/contributors) |
| 47 | * [Get involved!](http://www.apache.org/foundation/getinvolved.html) |
| 48 | * [Legal aspects on Submission of Contributions (Patches)](http://www.apache.org/licenses/LICENSE-2.0.html#contributions) |