Support Merge Request source branches on a different Git server
Problem to solve
I want to be able to open a merge request from a fork of a public project from my fork mirror hosted on a different server, rather than having to have a fork on the same server as the upstream project.
As a step towards federated merge requests, supporting a source branch hosted on a different server seems a small first iteration.
Assuming two GitLab instances, the upstream and downstream, and that I have an account on both, I should be able to:
✔create a public fork of a public upstream project on my downstream server (import the repo, already possible)
✔add some changes to my downstream fork
✨on the upstream server, create a new merge request and provide a Git URL and select a branch from that Git repo
With some frequency, the upstream will fetch changes from the downstream branch to
In the future, improvements could be made to notify the downstream server of the merge request, and register a callback URL for the downstream server to send notifications of changes to the source branch.