It's hardly a walled garden when you can take your entire repo (including commit history etc.) and go to another provider or go with your own git server.
Reminds me of the study that longer return periods are correlated with lower rates of return. Give a method that, in a simple logical view would encourage one outcome, but when you add in the complexities of humans, results in the opposite behavior.
I didn't know that. You still have the problem of mapping the user authentication though. Moving a big repository and giving users the right permissions seems pretty tricky. Do you know of any successful migrations away from GitHub?