At my very large and prominent employer, we use self-hosted GitLab locally, with Gitorious and GitHub Enterprise used in some other sections of the business.
Our local GitLab setup is rather recent and isn't quite a critical part of our infrastructure just yet, but I anticipate over the next few months we'll be switching more and more over to it. I recently started on a brand new project which is currently hosted on GitLab, though it'll probably move to public GitHub after we get approval to release it under a Free Software licence.
The nearly 4B market cap public company I work at uses gitlab to host our internal repositories. It works really well for us, we get a lot of the benefits of github, but we have control.
Most larger companies will not use a third party cloud service to host their code like github.com. They want software to run locally on their own servers instead.
Github offers their software to enterprise customers to run on their own servers, but they traditionally have done a bad job doing it, at least relative to gitlab. Today, dozens of open projects and even closed ones are using personal gitlab instances, but since the ecosystem is more open on gitlab contributions come back in to make it a much more friendly tool to self-host.
Tons of larger companies favor gitlab for exactly that reason.
We use at this moment GitHub for "consumption-ready" projects and GitLab internally for young projects.
Reasons for hosting your own:
- Billing is complex as it has to pass through multiple departments;
- Most code never makes it out of the company (I sincerely hope);
- Configuration files and sensitive data sometimes ends up in repositories, especially with young projects.
So GitHub for big, released stuff and internal repositories for small projects and as a developer sandbox.
Apples to oranges, GitHub provides Git as a service and Git is open source, so you can take your repo any time and host it yourself in number of different ways. It just happens that GitHub is most popular (for now) Git As A Service, probably due to the fact that GitLab had few horrible outages regularly every few months for past 2-3 years and hosting it yourself is/was also a bit of nightmare. Anyway, it's not like that. ;)
Having a self-hosted solution inside company's security perimeter is nice by itself. This is why I use GitLab on all my projects since I don't remember when. Also, the GitHub way of doing things is not universally liked, so having an alternative is always welcome.
+1 Gitlab is awesome! Cool community oriented developers and a ton of more features. I see no reason too use github when gitlab is just better. It's also offered as a self hosted service.
After Github started being kinda gross, we were trying to decide between switching to Gitlab hosted or going self-hosted. Self-hosted was a pain but turns out it was a good choice. I'm sad to see Gitlab going down downhill like their predecessors.
Is it really that hard to provide a no-bullshit hosted Git?
Any particular input as to where developers should move their projects? I've had wonderful luck with self-hosted GitLab, but while it meets our organization's purposes, it doesn't seem like it'd be the best general purpose Git provider.
My employer uses gitlab for most internal projects because of ITAR and other legal restrictions (aerospace). No external hosted services allowed, except obviously for released open source code.
Gitlab self hosted is just one of many options.
reply