Testing features – Quality Assurance – Testing Software

Here bellow we can see a typical workflow where the red circle represent bugs.

basic-workflow.png

Do you think if this basic workflow where it’s merging features directly into master to later be deployed and tested is it enought good?

With this basic workflow approach the master branch has many commits and some of them could has issues developed during the sprint. GitFlow  is other alternative to this workflow which help to have a cleanest version of master  and let see more information about how does it works GitFlow.

Continuous delivery with  Gitflow

Instead of a single master branch, this approach uses two branches to track the history of the project. While the master branch contains tags and/or commits that record the project’s official release history, a shared integration branch (usually called “develop branch“) gives your team a place to ferret out bugs and incompatible changes.

gitflow.png

Gitflow model has the below enhancements:

  • Develop branch
    • used for deploy and test the feature during the sprint
    • fix issues into “develop” instead of  “master”
  • Master branch
    • Track the application history
    • cleanest version of develop and is more stable
    • Robust since the feature was tested into develop master has less issues

Using GitFlow once we finished a feature in order to be tested we should do this steps :

  1. Creating a pull request when merging your feature branch to develop is standard practice.
  2. Master  Release version: there are 2 options:
    1. Create a pull Request merging develop with Master
    2. you can automatically create tags on master based on each successful build of develop and deploy from those tags right away. Or, you can wait until several features have been successfully been added to develop, and create the tag by hand.

The GREATEST ENHANCEMENT  will be if we deploy and test the  feature branch  before than merge the changes to the Development branch 

More information about GitFlow Workflow in:
https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
https://www.atlassian.com/continuous-delivery/continuous-delivery-workflows-with-feature-branching-and-gitflow

No silver bullet by @bryanMMathers

 

Leave a Reply

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