Skip to content

Git Flow Support for Merge between Release and Develop branches

Release notes

Problem to solve

GitLab does not actually support Git Flow properly. To support Git Flow, a merge request must not just merge a release or hotfix branch to master, it must also merge the release or hotfix branch to the develop branch when it is approved at the same time it deletes the release branch. In effect, two merges are required, Failure to merge back to develop (as Git Flow would do) fails to capture the changes on the release or hotfix branch to develop and exposes risk that a fix will not be corrected with the next release since it was never put on the develop branch.

Intended users

User experience goal

Proposal

On approval merge, merge to both master and develop branch before removing the source branch (release or hotfix). In order to maintain the GitLab product as is, this would be a settings option checkbox per project that turns on "Git Flow Support" feature. Note that the merge to master and develop needs to handle conflict resolution (to each independently) just as git flow does.

Further details

We cannot use Git Flow with GitLab until this feature is added without doing some bizarre work arounds ie: introducing a third branch (PROD) as a work around until you get this working. No one likes that approach and we should be able to expect that Git Flow would be supported in GitLab so we are hoping this will be a priority enhancement. The work around is high risk since we have to turn off protections on master branch and protect a new branch PROD and do git flow manually - again this is not the desired approach but is ONLY a work around until you make the enhancement.

Permissions and Security

Documentation

Availability & Testing

What does success look like, and how can we measure that?

What is the type of buyer?

Is this a cross-stage feature?

Links / references

Edited by Brett Aurich