In Gitflow the master branch represents the final stage; merging your work in it is equal to making a new release of your software. You usually don't start new branches from the master; you do it only if there are severe bugs you have to fix instantly, even if that bug has been found and fixed in another evolving branch. This way of operating is superfast when you need to react to a painful situation. Other than that, the master branch is where you tag your release.