Remove :default_merge_ref_for_diffs Feature Flag
What
Remove the :default_merge_ref_for_diffs
feature flag ...
This feature flag will default to comparing your source branch changes against master (HEAD).
Owners
- Team: Source Code
- Most appropriate slack channel to reach out to:
#g_create_code-review
- Best individual to reach out to: @andr3 @m_gill
Expectations
What are we expecting to happen?
Enabling this flag will change the default of comparing source branches against master to a method using merge-ref
. More info can be found in this issue.
From that issue:
Merge request diffs are currently calculated by
git diff target...sourcewhich compares
HEADof
targetwith the merge base of
targetand
source. This works well until changes from the target branch are merged in to the source branch, creating a complete mess of the diff.
What might happen if this goes wrong?
A past problem was users saw some incorrect diffs when looking at different versions, especially after a rebase/squash. This should be fixed, but it's something to watch out for.
What can we monitor to detect problems with this?
Any issues with diffs could be related to this. Please ping @garyh for investigation!
Beta groups/projects
If applicable, any groups/projects that are happy to have this feature turned on early. Some organizations may wish to test big changes they are interested in with a small subset of users ahead of time for example.
-
gitlab-org/gitlab
project -
gitlab-com/www-gitlab-com
project
Roll Out Steps
-
Enable on staging ( /chatops run feature set feature_name true --staging
) -
Test on staging -
Ensure that documentation has been updated -
Enable on GitLab.com for individual groups/projects listed above and verify behaviour ( /chatops run feature set --project=gitlab-org/gitlab feature_name true
) -
Coordinate a time to enable the flag with the SRE oncall and release managers - In
#production
by pinging@sre-oncall
- In
#g_delivery
by pinging@release-managers
- In
-
Announce on the issue an estimated time this will be enabled on GitLab.com -
Enable on GitLab.com by running chatops command in #production
(/chatops run feature set feature_name true
) -
Cross post chatops Slack command to #support_gitlab-com
(more guidance when this is necessary in the dev docs) and in your team channel -
Announce on the issue that the flag has been enabled -
Remove feature flag and add changelog entry -
After the flag removal is deployed, clean up the feature flag by running chatops command in #production
channel
Rollback Steps
-
This feature can be disabled by running the following Chatops command:
/chatops run feature set --project=gitlab-org/gitlab feature_name false