Github is already in practice federated, within the confines of github. If you fork a project you now have your own federated git forge with that project.

The difference is that these same flows should work without needing to be github to github.