Skip to content

Development Workflow

mickeyreiss edited this page Feb 28, 2012 · 1 revision

I'm finding the multiple one-commit pull requests to be tedious, so I propose a new workflow.

How about we do this:

  • We are both allowed to push directly to ABTech's master.
  • A new production branch is always ready to be deployed live.
  • You can only merge the other person's code into production; fast-forward merges should be rebases whenever possible.
  • New features and larger (i.e. multi-commit) changes go into their own branch.
  • You can create branches in your own fork if you want to work on them by yourself, or you can commit branches to ABTech's repository for collaboration.
  • Submit a pull request to get a branch into master, then add to production as normal.
  • You can also consider squashing all the work from a branch into one master "feature" commit.

Rationale

This means that iterative changes are more efficient and follows naturally from the deep connection between Github's pull requests and git branches.

It also means that we are forced to rebase our small changes upon each other's ongoing work, which prevents dumb conflicts.