1 | Good pull requests - patches, improvements, new features - are a fantastic
|
2 | help.
|
3 |
|
4 | If you've spotted any small, obvious errors and want to help out by patching it,
|
5 | that will be much appreciated.
|
6 |
|
7 | If your contribution involves a significant amount of work or substantial
|
8 | changes to any part of the project, please open a "contribution enquiry" issue
|
9 | first to check that the work is wanted or matches the goals of the project.
|
10 |
|
11 | All pull requests should remain focused in scope and avoid containing unrelated
|
12 | commits.
|
13 |
|
14 | Please follow this process; it's the best way to get your work included in the
|
15 | project:
|
16 |
|
17 | 1. [Fork](http://help.github.com/fork-a-repo/) the project.
|
18 |
|
19 | 2. Clone your fork (`git clone
|
20 | git@github.com:<your-username>/<repo-name>.git`).
|
21 |
|
22 | 3. Add an `upstream` remote (`git remote add upstream
|
23 | git://github.com/<upsteam-owner>/<repo-name>.git`).
|
24 |
|
25 | 4. Get the latest changes from upstream (e.g. `git pull upstream
|
26 | <dev-branch>`).
|
27 |
|
28 | 5. Create a new topic branch to contain your feature, change, or fix (`git
|
29 | checkout -b <topic-branch-name>`).
|
30 |
|
31 | 6. Create the needed tests to ensure that your contribution is not broken in the future.
|
32 | If you are creating a small fix or patch to an existing feature, just a simple test
|
33 | will do, if it is a brand new feature, make sure to create a new test suite.
|
34 |
|
35 | 7. Make sure that your changes adhere to the current coding conventions used
|
36 | throughout the project - indentation, accurate comments, etc.
|
37 |
|
38 | 8. Commit your changes in logical chunks; use git's [interactive
|
39 | rebase](https://help.github.com/articles/interactive-rebase) feature to tidy
|
40 | up your commits before making them public. Please adhere to these [git commit
|
41 | message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
|
42 | or your pull request is unlikely be merged into the main project.
|
43 |
|
44 | 9. Locally merge (or rebase) the upstream branch into your topic branch.
|
45 |
|
46 | 10. Push your topic branch up to your fork (`git push origin
|
47 | <topic-branch-name>`).
|
48 |
|
49 | 11. [Open a Pull Request](http://help.github.com/send-pull-requests/) with a
|
50 | clear title and description.
|
51 |
|
52 | If you have any other questions about contributing, please feel free to contact
|
53 | me. |
\ | No newline at end of file |