As part of the attempt to get more organized, this post outlines how to contribute to Dumbo. I might turn this into a wiki page eventually, but a blog post will probably get more attention, and people who are not planning to contribute to Dumbo any time soon might still be interested in the process described in the remainder of this post.
If you haven’t done so already, create a GitHub account and fork the master tree. Then go through the following steps:
- Either create a new ticket for the changes you have in mind, or assign the corresponding existing ticket to yourself.
-
Create a new branch, preferably naming it after the ticket:
$ git checkout -b ticket-<ticket number>
- Make the necessary changes (and add unit tests for them).
-
Run all unit tests:
$ python setup.py test
-
If none of the tests fail, commit your changes using a commit message that Assembla understands:
$ git commit -a -m "Closes #<ticket number>"
-
Push the branch to GitHub:
$ git push origin ticket-<ticket number>
- Send a pull request to me.
-
Switch back to the master branch:
$ git checkout master
Creating a separate branch for each issue might seem a bit overkill at first, but it allows you to get back to it later, which can be very useful in practice. It might, for instance, save you some time when I spot a bug in you changes, and ask you to send another pull request after fixing this bug.