Why I use GitLab over GitHub
Since March 2018, I’ve hosted all my source code on GitLab after Microsoft acquired GitHub. At the time, this was mostly out of fear that Microsoft would ruin GitHub (which they didn’t, phew).
So you might ask, why don’t you switch back to GitHub? After all, for 100 people I randomly click on Git profiles for, 99 of them are going to have a GitHub profile.
Here’s a few quick reasons why.
GitLab is the “underdog”
I’ve never liked using products made by a dominant company. GitHub is the dominant company in the independent developer space. I’ve always been about not being the status quo (even though it gets tough). This is why I use Firefox over Chrome. Both are great browsers, I just prefer Firefox because it’s from the underdog. And it’s not Chrome.
Same goes for GitLab. Both GitLab and GitHub do exactly what I need to do. I just prefer GitLab because it’s not GitHub.
GitLab is actually open source
Here’s a fun question – wouldn’t you want your open source code to run on an open source platform? I certainly think so. For this reason, I use GitLab. The community edition of GitLab is open source. For what it’s worth, I could set up a GitLab instance on a VPS and push all my code to there, but I prefer to use GitLab’s online instance.
GitHub is not open source, and I don’t like that. My open source code is being hosted on a closed source platform? That’s no fun.
GitLab is much more transparent about operations
For what it’s worth, GitLab has entire repositories for their operations, and of course for their main product, GitLab itself. Because of this model, GitLab’s operations are much more transparent, and from a trust perspective, I like this. GitHub is much more secretive, and less transparent.
GitLab is a much more tightly integrated platform
Say I’m making an open-source Python library on GitLab. GitLab has all the tools I need to do CI/CD, deploy to PyPi, check for code vulnerabilities (with better checks in more premium plans), and a bunch of other snazzy stuff. Sure, this setup does take a lot of time, and I’ll admit I’ve never used any of these features. However, I can only imagine how useful they are when managing a relatively decent sized open source operation.
GitHub has CI/CD pipes. Yikes.
Just a few words in case you ever wondered why I use GitLab instead of GitHub. Just works better for me!