FR: make possible to filter merge commits in repo UI

Description

Currently project commits list (for example https://gitlab.com/gitlab-org/gitlab-ce/commits/master) includes both merge and plain commits, similar to git log without any arguments. This is a reasonable default for git model with long-living branches with regular merges but it is not very convenient for common merge request based development flow - with many small merge requests commit history gets overloaded with noise and duplication making it harder to track actual change history.

When using git CLI one can use special flags to improve readability - git log --merges and git log --no-merges. Providing similar functionality in GitLab web UI would serve the same purpose.

Proposal

  1. Add UI element to switch between merge commit filtering modes: "all", "merge commits only" and "no merge commits"
  2. Make "merge commits only" the default view mode.

Rationale for viewing merges as the default is that It fits common public project model with one main development branch that receives merge requests for all changes, both trivial ones and larger features. Looking only at merges allows to get simple overview of development history without distracting on implementation details (== specific commits).

Links / references

https://git-scm.com/docs/git-log

Edited Jun 17, 2025 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading