Skip to content

Branching & Merging

Pim Bliek edited this page Feb 12, 2019 · 2 revisions

General

A well thought out development process isn't new, we don't need to reinvent the wheel. For BrewBuddy we use a quite standard workflow which is common for Git and Github with the addition that we use a development branch for the unstable releases.

Branches

Master

The master branch always contains the latest 'stable release' or the production version. This release is the version end users should use for their brewing sessions. This stable release is thoroughly tested and should be ready to brew.

Development

The development branch is the place where the latest 'unstable release' lives. This release contains all the latest features and bugfixes. All these are thoroughly tested in individually. We do not push new or altered code to development, we always use feature branches for this.

Feature / bug branches

For every feauture, enhancement or bug you want to fix you create a feature- or bugbranch. We use logical naming for this with the number of the issue on Github. For example: 8-referential-integrity

Only when a developer has fully fixed or created the code for the issue and it is fully tested can the developer perform a 'pull request' for merging back to development. With a 'PR' you request other developers to check your solution and test it. Once more than 1 other developer approves your changes the PR will be merged to development.

Extra information

You can find more documentation on this workflow here: https://guides.github.com/introduction/flow/ NOTE! In this documentation they merge feature- and bugbranches back to master. We don't do that, we merge to development first.