Improve messaging about why rebase button is missing

Problem to solve

We have a great community contribution (!22505 (closed)) to improve the error messaging displayed to users in the event that the rebase button cannot be offered - this work is 1 year old and needs to be finished since the contributor is unable to complete the work.

From @pslaughter:

A bit of history

This MR originally started out as simply adding some more details to the reason why a fast-forward merge is not possible. Unfortunately this caused this message to be a bit too long gitlab-foss!29646 (comment 206512919). The original author did not have capacity to finish this up, so I offered to pick it up.

Since some time passed between the original MR and this one, I deviated from the original MR slightly for reasons laid out in !22505 (comment 269467888).

So what's left to do?

  • We should resolve this comment !22505 (comment 269466076). Even though it is possible, it looks like we don't want to show Resolve conflicts button when Fast forward merge is set. We need to fix that in this MR.
  • Address UX comments.

Note on MR scope

  • This MR attempted to clean up some of the existing duplication in a computed. This clean up could easily be deemed as "outside the scope of this MR". Still, this is a good candidate for the boy/girl-scout rule. 🤷

Intended users

User experience goal

UX review is included in the linked MR from the description.

Proposal

Before After After ("Resolve conflicts" button is not available)
Screen_Shot_2020-01-09_at_4.01.37_PM Screen_Shot_2020-01-09_at_4.07.30_PM Screen_Shot_2020-01-09_at_4.07.59_PM

Further details

Documentation

Availability & Testing

Edited by Michelle Gill