Support Fast-Forward Merges Between Protected Branches
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Release notes
Problem to solve
When leveraging GitLab Flow, where "commits [ought to] only flow downstream", merge commit SHAs (by default) are generated for MRs between branches, making traceability of changes and sharing of artifacts between branches difficult as the Commit SHA changes for each branch.
Creating Merge Commit SHAs is counter to the "commits only flow downstream" approach.
Intended users
User experience goal
Merge Commit SHAs are extremely useful for merging changes into a default
branch from a feature
branch as they help tell the story of what changed and when. Being able to tie (via a Commit SHA) multiple things together would be extremely beneficial; things such as:
- Job Artifacts
- GitLab Releases (created in the default branch)
- Environment Deployments (from Dev > Staging > Production)
Proposal
Enable a checkbox in the Merge Request Settings of a project (see below)
Further details
This will enable GitLab Flow to be much better supported, specifically when paired with GitLab Releases and the Release CLI work going on.
Permissions and Security
Documentation
Availability & Testing
What does success look like, and how can we measure that?
Users will be able to more natively experience the benefits of GitLab + GitLab Flow as they have full traceability which may also open up the chance to include branch-specific deployments in the MR.