implement cross-instance fork
Problem to solve
This task comes after the implementation of ActivityPub for social features, implementing cross-instance search, implementing visualizing cross-instance projects, and is one step leading us to cross-instance merge requests.
To be able to perform cross-instance merge requests, we must first be able to do cross-instance forks. Through cross-instance search, we should find the project we want, then browse that projects and hit a fork button as if it was hosted on our own instance.
Proposal
I'd like to avoid designing too precisely just yet as for now I have only theoretical knowledge about ActivityPub : once we're done implementing social features and we have actual real world experience with the standard, we may find it helps with such task as well, or we may be inspired by other implementations solutions.
Just a thought, though : given we work only with public repos, forking is as easy as creating a new repos and importing content from git clone through HTTP.