Skip to content

Developer Guide: Pull Request Checklist

ginatrapani edited this page Sep 13, 2010 · 22 revisions

Now that you’ve mastered working with ThinkTank and git you’ve made changes to the code you want Gina to merge back into the master development tree. Awesome! We’re thrilled to have you as a contributor.

Before you issue a pull request, do the following:

  1. Make sure all existing regression test pass. Gina won’t merge any code that makes existing regression tests in /thinktank/tests/ fail. Before you issue a pull request, make sure all tests pass.
  2. Make sure you’ve added regression tests for your new code. If you’ve fixed a bug, make sure you’ve added a test which fails in the current development tree, but passes in yours because of your fix. If you’ve added a new feature or new object methods or a new plugin, make sure you’ve also added thorough and complete tests that demonstrate that it works.
  3. Rebase your work on the current state of the master development tree. Help us keep ThinkTank’s commit trees clean! Use git-rebase to base your changes on the latest state of the development tree. This puts the onus of resolving conflicts that may have come up between the time you started your changes and the time you finished on you. This is a good thing, because you know better what your new code does as compared to the existing code than Gina does. Here’s how to use git-rebase before you issue a pull request.

Clone this wiki locally