Design discovery for super merge requests
In support of https://gitlab.com/gitlab-org/gitlab-ee/issues/3427 we need to map out a workflow, so we can understand how this will work from a user perspective.
Proposal
-
Add the ability to configure a super project
The super project will be the project which links the other projects together.
- Add new project setting 'Super project'
- Add option to add/remove projects from the super project
- A project can only be part of one super project
- A super project cannot be part of another super project
The super project should be visually distinguished from regular projects when browsing a project list
-
Add the ability to merge across projects
When opening a merge request to a project that is part of a 'super project' the user will be prompted to open a corresponding 'super merge request' to the 'super project'
- Merge requests to sub-projects are merged by merging the 'super merge request'
- Code review happens on the normal merge request
-
Add the ability to tag and branch across projects
When a branch or tag is created on the super project, corresponding branches and tags are created on the sub-projects.
Links / references
https://gitlab.com/gitlab-org/gitlab-ee/issues/3427