Skip to content
GitLab
Next
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab GitLab
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 44,763
    • Issues 44,763
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1,329
    • Merge requests 1,329
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.orgGitLab.org
  • GitLabGitLab
  • Issues
  • #13251
Closed
Open
Issue created Aug 02, 2019 by James Ramsay (ex-GitLab)@jramsay-gitlab🔴Contributor

Move "Require code owner approval" setting from project interface to protected branches interface

  • Backend weight: 3
  • Frontend weight: 2

Problem to solve

The CODEOWNERS feature provides greater flexibility than approval rules that are defined for all merge requests. For teams that practice very high velocity development, allowing low risk changes to enter master very quickly is necessary to achieve this velocity. It is important that high risk changes have a greater level of scrutiny.

GitLab only permits push permissions to protected branches to be controlled at the branch level, but for teams trying maximize velocity, it needs to be possible to divert high risk changes to a merge request workflow, while allowing low risk changes to be merged based on the file paths changed.

Further details

The backend and API has already been implemented in https://gitlab.com/gitlab-org/gitlab-ee/issues/10395, but the speed we shipped the API before the interface.

Proposal

Move the existing Require code owner approval setting from the Merge Request settings, to be available per protected branch.

If this option is enabled, it will:

  • block pushes that contain changes to files matched by the CODEOWNERS file, requiring a merge request to be used
  • block merges where code owners have not approved
Mockup
image

Links / references

Edited Sep 13, 2019 by Marcel van Remmerden
Assignee
Assign to
Time tracking