Skip to content

GitLab Next

    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Menu
    Projects Groups Snippets
  • Get a free trial
  • Sign up
  • Login
  • Sign in / Register
  • GitLab FOSS GitLab FOSS
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar

GitLab 15.0 is launching on May 22! This version brings many exciting improvements, but also removes deprecated features and introduces breaking changes that may impact your workflow. To see what is being deprecated and removed, please visit Breaking changes in 15.0 and Deprecations.

  • GitLab.org
  • GitLab FOSSGitLab FOSS
  • Merge requests
  • !17395
Project 'gitlab-org/gitlab-ce' was moved to 'gitlab-org/gitlab-foss'. Please update any links and bookmarks that may still have the old path.
Merged
Created Feb 27, 2018 by Bob Van Landuyt@reprazent🔶Maintainer9 of 17 tasks completed9/17 tasks
  • Review changes

  • Download
  • Email patches
  • Plain diff

Allow maintainers to push forks of a project for branches that have open MRs

  • Overview 131
  • Commits 11
  • Pipelines 31
  • Changes 58

What does this MR do?

This MR makes it possible to allow maintainers of a project push to certain branches of forks of the project. This can be specified when creating/editing an MR:

Screen_Shot_2018-02-27_at_14.28.35

Checking this option will allow users that have developer access or above to the canonical project to push to the source branch specified in the MR.

The option should be visible when creating a merge request across different projects, when it is not available, we show these reasons:

Screen_Shot_2018-03-02_at_12.22.01

Screen_Shot_2018-03-02_at_12.21.48

Screen_Shot_2018-03-02_at_12.21.20

When the feature is enabled for a merge request, this is visible in the merge request widget:

Screen_Shot_2018-02-28_at_15.49.55

When editing a file from the merge request, we display this message to inform the user that they will committing directly on the source branch:

Screen_Shot_2018-02-28_at_10.21.13

Are there points in the code the reviewer needs to double check?

Currently, it is not possible to allow push access to protected branches. Should this be made possible? Or should we hide the option for protected branches? @jramsay @DouweM

TODO:

  • Adjust the UI to allow editing and committing by maintainers
  • Show messages explaining why the feature cannot be used when creating a merge request across different projects.
  • Add documentation

Does this MR meet the acceptance criteria?

  • Changelog entry added, if necessary
  • Documentation created/updated
  • API support added
  • Tests added for this feature/bug
  • Review
    • Has been reviewed by UX
    • Has been reviewed by Frontend
    • Has been reviewed by Backend
    • Has been reviewed by Database
    • Has been reviewed by Security
  • Conform by the merge request performance guides
  • Conform by the style guides
  • Squashed related commits together
  • Internationalization required/considered
  • End-to-end tests pass (package-qa manual pipeline job)

What are the relevant issue numbers?

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/22292

Edited Mar 05, 2018 by Bob Van Landuyt
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: bvl-allow-maintainer-to-push