Skip to content

Git branching model tutorial

noodlenode edited this page Mar 6, 2012 · 17 revisions

This page helps you get started with the new branching model.

Getting started FAQ

Q: WTF I just want to code!

See issue #701 to switch to the develop branch instead of master.

Q: So... What is branching?

A: Just take a few minutes to follow this tutorial, the branching/merging concept is an awesome thing you probably want to understand when working with Git.

(Note: This might sound complicated at first, but you won't have to deal with it that much, while it really helps when you're working in big teams!)

Q: Where am I supposed to commit things?

A: Most of the time, on the develop branch. The few exceptions are:

  • When working on a specific big feature: each important addition/refactoring (like the "Campaign mode") are develop in specific feature/xxx branches.
  • When fixing a bug present in a realease: the latest release is still available for changes on the develop branch, and bugfixes should be sent here so that we can release a patched version afterwards.
  • When working on the vanilla version.

Click below to view a nice schema of the branching model:

Q: Ok, so how do I choose a branch/merge a branch/cancel a merge?

A: Take a quick look at the tutorial I linked above, you'll probably find your answer there. If this doesn't help, links to the forum/IRC channel are available here, you'll probably find someone who can help!

Common situations

Releases

Making a new major release

TODO

Making a new minor release

TODO

Merging release bugfixes back to develop

TODO

Feature branches

Starting a feature branch

TODO

Merging a feature branch

TODO