Automerge upstream branches

Description

Developers sometimes maintain multiple, parallel release branches and a fix merged in one release should automatically be merged into other, later releases. e.g. A fix applied to branch release-8.4 should automatically be applied to release-8.5 and release-8.6.

Proposal

  1. Add UI to set optional upstream branch parameter for each branch.
  2. Add UI to enable/disable automerge for each branch with an upstream branch specified.
  3. For any merge request targeting a branch with an upstream branch:
  • If the upstream branch has its own upstream branch, walk the chain to determine the entire list of upstream branches.
  • Show notice that merging this MR will automerge the changes into the upstream branches.
  1. When merge request is merged (via the web interface), attempt to cherry-pick the changes and apply to each upstream branch.
  2. If the automerge fails for any upstream branch, create a new merge request for that specific branch with description back-referencing the original merge request.
  3. [Stretch] Run CI on each automerge
Set Upstream Branches MR New MR
image image image image

Links

Edited Jun 28, 2017 by Sid Sijbrandij
Assignee Loading
Time tracking Loading