When force-pushing to update a merge request, context for changes is lost
Release notes
When using a force-pushed-based workflow to update Merge Requests, the timeline does not show helpful comments regarding what changed, as it does when pushing new commits to a Merge Request.
Problem to solve
When you're using the workflow where you force-push to update a Merge Request instead of creating a new commit, the details of what changed are obscured. Here's what the timeline shows:
There is no helpful comment in the timeline showing what changed, which impairs reviewers' ability to see at-a-glance what changed. Yes, they can click on the "compare with previous version" link to see the diff, but this requires manual action and sometimes simply seeing a description of the changes is enough.
To do this, you need to not force-push and instead push new commits to the merge request. Then you can see the commit messages of individual commits, which is much more helpful:
However not everyone likes this "push new commits and then squash at the end" workflow. Also, sometimes you can't use it at all because the commit history of the MR is being curated and the intention is to preserve it while merging, rather than squashing everything into one big giant commit.
Intended users
People updating their merge requests using the "force-push" model rather than then "add new commits to the Merge Request" model. Could be developers, designers, documentation people or anyone who submits Merge Requests and then updates them in response to reviewer comments.
User experience goal
Reviewers can see helpful comments in a Merge Request's timeline regarding what changed regardless of which Merge Request workflow the submitter is using.
Proposal
When force-pushing a branch that is associated with a merge-request, prompt the user to provide a context string indicating what was changed in this force-push change.