What about backups? Managing access to the repository? Making the repository easy to discover? Can you browse the code in a browser, or read the README without cloning?
Of course you could do all of these things with enough work. But why would the average developer want to? Do you really think most developers care so much about Microsoft owning GitHub?
(somewhat ironicaly code hosted on github. Not sure its still being updated..)
we currently don't use it, just because its on the same network as our site.. though because its git and it replicates the repo everywhere its less of an issue.
As for myself, I don’t like GitHub UI, which is slow, has low information density, and is generally lollipop-like; and its social media aspect, which often turns the bug tracker into a Twitter equivalent with viral bugs, emojis to cheer and boo people.
So I set up a cgit instance for myself. Patches can be sent over mail as attachments generated with git format-patch (attaching files to mails isn’t hard). Issues can similarly be sent over mail and described in a BUGS file.
That’s sufficient for my single person projects. Probably also for n-person projects for small values of n (let’s say 7). Past that I’d set up a Gerrit instance, which IMO has the best UX of all code review tools available, free or not; and a Redmine for ticket tracking.
I would consider myself pretty knowledgeable and I love going on tangents when setting up projects. I love tinkering and learning.
There is no situation in which I'd want to do all of the above work for every single repository I setup.
I have hundreds of repositories that I own on GitHub for things like school assignments and personal projects. If I start a weekend project as you describe then the first 4 hours are going to be setting my repository up.
Nobody wants to do this. Just because something is difficult or time consuming doesn't mean that it is good or useful. Doing this once would be a fun learning experience. Doing it more than once is a useless chore.
Of course you could do all of these things with enough work. But why would the average developer want to? Do you really think most developers care so much about Microsoft owning GitHub?