It's a bit like a social network. There are better technologies out there (e.g. bitbucket), but like you said, developers have chosen Github for now. However, it would be possible for a mass exodus as they turn up the enforcement on the offensiveness bans.
Being able to mark certain branches and non-rebaseable is enough to make it better IMO. Perhaps GH has finally added this functionality, but it wasn't there the last time I checked.