I believe that's more to do with the process than the platform. Having to remember different processes to contribute fixes/features is a pain. I can't count how many times I had to register an account, log into their custom bug tracker, find the darned obscure remote (looking at you, apache SVN), check out, figure out who I have to email the patch... And then doing it all over for a different project makes the entire process a little ridiculous. With Github, it's ridiculously simple: Log in, fork, clone, push, PR, repeat.
> I see this dependence as very bad and dangerous for the global free software movement.
OTOH, having a place to call "home" for FOSS developers generates a better sense of community. It's like hosting a conference across multiple buildings: sure, the venue's big enough to hold X amount of people, but it doesn't seem like there's X people attending if I can't see everyone without having to traverse buildings.
Also,
> It's trivial to push your local copy to bitbucket, or even your own git server. Lock in is not really an issue, in my opinion.
I'd much prefer that over github, as my account sits idle there, while my gitlab gets plenty of use. I suppose it's something I should look into.