GIT-Workflow

Now that we have basically understood what GIT branches, merging, rebasing and remote repositories are we can now talk about the “categorization” of branches.

Lets take Bitbucket as example. On bitbucket we can set a “type” of what our branch should represent when we create a new branch via the web interface:

Feature

Feature branches should only contain new software which extend your project.
After creating the branch it is automatically prefixed with feature/<branch-name>

Release

This branch type allows you to group together features, which have already been “finished” in their own branch but have not yet been merged into the master branch and therefore created a “new version” for your software.

Therefore release branches are used to test and polish a certain release before it is public. While this is in progress the development team can focus on creating new features or other bugfixes.

After creating a branch it is automatically prefixed with release/<branch-name>

Bugfix

Bugfix branches should only contain bugfixes for already published or release branches.
After creating a branch it is automatically prefixed with bugfix/<branch-name>

Hotfix

Hotfixe branches are another variant of bugfixes, but here we need to “quickly” add a fix for a problem which has already been published to the production branch.
After creating a branch it is automatically prefixed with hotfix/<branch-name>

Other

Of course you can create branches which don’t fit any of the above “categorization”.
These branches won’t get a prefix.

Share this post

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.