Make Monotree Merging Magnificent
The following ideas are extracted from or based on http://blog.ffwll.ch/2017/08/github-why-cant-host-the-kernel.html.
A monotree describes a project that merges into a single Git repository but is developed in multiple forks. This is an approach the Linux kernel follows. For further explanation and advantages over other workflows please refer to the article linked above.
I have created subissues for most of the missing features below. Feel free to open new ones for those that I missed.
forks
- multiple forks of same project within a namespace (https://gitlab.com/gitlab-org/gitlab-ce/issues/36268) https://gitlab.com/gitlab-org/gitlab-ce/issues/36275 - Multiple forks of the same repo in one organization
- restore/create forking relationship (https://gitlab.com/gitlab-org/gitlab-ce/issues/36269) https://gitlab.com/gitlab-org/gitlab-ce/issues/36277 - Establishing the fork relationship after the fact
- create merge requests across forks (https://gitlab.com/gitlab-org/gitlab-ce/issues/20097) https://gitlab.com/gitlab-org/gitlab-ce/issues/36280 - Be able to move merge requests across multiple projects/forks
issues
- cross-project / cross-namespace issues (https://gitlab.com/gitlab-org/gitlab-ce/issues/36272)
- https://gitlab.com/gitlab-org/gitlab-ce/issues/36279 - Unify/Connect issue/mr discussions across copies
- issue status per project (https://gitlab.com/gitlab-org/gitlab-ce/issues/36272#note_37252760)
merge requests
- cross-project merge requests (https://gitlab.com/gitlab-org/gitlab-ce/issues/36273)
- merge request from e-mail (with patch) (https://gitlab.com/gitlab-org/gitlab-ce/issues/32878)
- subscribe to merge request diffs via e-mail
- reply to merge request diffs via e-mail (as we support for replying on comments)
- Creating a new Merge Request from same source after a Merge Request accepted (gitlab-org/gitlab-ce#39488)
- https://gitlab.com/gitlab-org/gitlab-ce/issues/36283 - Be able to create a copy of merge request when editing and selecting different target branch
- #13187 (moved) Bisecting is central to the kernel debugging workflow. All merge requests need to be bisectable.
- #36913 (moved) Maintainers regularly take the first few patches of a series, leaving the rest for further revision.
e-mails
- Reply by Email - mbox/maildir support (gitlab-org/gitlab-ce#19524)
- In-Reply-To email header is incorrect (gitlab-org/gitlab-ce#36054)
Edited by Toon Claes