I am however using this as an opportunity to rely on any one single place less.
I'm in the process of mirroring my git repos on GitLab, and trying to think of a way to signify that both the GitHub and GitLab repos are "canonical", and that issues/PRs/contributions can happen at both.
> synonyms: recognized, authoritative, authorized, accepted, sanctioned
That's what I meant for it to mean anyway...
How can two different endpoints both be authoritative? What happens if they differ?
I want both to be master, so that users who are comfortable on both platforms are willing to make contributions to the codebase, so that any one service/system going down won't stop development, and so that as the "community" migrates around different platforms they can always find the full version of the software.
Recommending simplifying a process to the point that it no longer solves the problem it's trying to solve isn't helpful.
You might fake it (and meet your stated goals) by maintaining a true master behind the scenes and syncing to two public slaves... (ie, forks you treat as peers, each with a "master" branch) but that still leaves neither of them truly "canonical" -- a designation of authority that would apply to the place where you'd resolve conflicts given simultaneous commits.
If anything, that comment makes it clear to me that they're staying mobile because they don't implicitly or explicitly trust any of the current providers.
I think if they implicitly trusted someone, they'd just migrate to them immediately - why wouldn't you?