I do believe that it is possible, at least at the API (cli) level.
While git is good under the hood, then it has not really user-friendly interface.
Also git heavily benefits from GitHub's success, which locks us with git :(
I wrote about it here https://trolololo.xyz/github - GitHub is really good, but there's a small problem with that