DEV Community

Discussion on: Advantages of Git-flow over standard git commands

Collapse
 
joeyguerra profile image
Joey Guerra

If there's a long-lived develop branch, what's the point of having the master branch anymore if it's never used to build the published artifact from?

What's your recommendation for when multiple people are adding separate features to a single repo and there's a deployment happening on Thursday but only 1 feature is ready for deployment and the others are still being worked on?

Collapse
 
bloodgain profile image
Cliff

Yeah, it can kind of be confusing if you don't read up about git flow first. This article is more about the support tool/scripts.

The releases sit on the master branch as tags. There is no standalone release branch. The dev branch is more like a dev and test branch that you release from. But any new hotfixes or new, separate releases might be branched off of master.

Collapse
 
soumyadey profile image
Soumya Dey

You didn't understand the workflow properly. The develop is there to save the master branch from any unwanted bugs. It works like a guard in front of the master.
And when ready the develop branch will be merged with the master.

And when several people are working on a repo... everyone will work with their own separate feature branch. When the feature is ready they will finish that and it will get merged to the develop, which will then be merged to master.
And master is the branch that is used to deploy your code.

Collapse
 
joeyguerra profile image
Joey Guerra

Who merges from develop to master?

Thread Thread
 
bloodgain profile image
Cliff

The designated integrator, which might be one person or a team. There might be testing required before, etc.

Thread Thread
 
joeyguerra profile image
Joey Guerra

My apologies. This post is about the tool. I got caught up in the underlying branching strategy that it supports, which touches a smallish nerve.

Thank you Soumya for writing this article. I really appreciate being reminded of past strategies and challenging the decisions that we made in the past to see if they are still valid in the present.