Explain Git terms using simple language
This is an actionable insight from the UX Department: MRs experience async critique research (insight).
What
Throughout the UI, especially in the repository and merge request UI, there are various Git-specific terms that most people don't understand. Even some people that are familiar with the basic concepts of Git might find them hard to understand. Some examples:
- Fast-forward merge
- Rebase
- Squash
- Cherry-pick
Here's a state of the MR widget that displays two of those terms, without any explanation of what they mean:
Why
Making the UI more understandable to more people makes it easier for them to adopt the product, not only because they feel knowledgeable enough to use it but also because it makes the product friendlier and more useful.
How
One possibility is to add explanatory popovers whenever a term like this is shown. The popover can they explain what it means using simple language. We can also add a small visual to help convey its meaning.
For the rebase case:
- Add a popover
(?)
to the text. - Popover title: What's a rebase?
- Popover content: Rebase adds any changes from the target branch to the source branch. It's required before merging in projects using the fast-forward merge method. [Learn more]
- Learn more link destination: https://docs.gitlab.com/ee/topics/git/git_rebase.html