Jake Wheeler

GitHub vs. GitLab - Which is Better?

April 15, 2020

The great debate - GitHub vs. GitLab. The names are so similar that choosing one platform over the other must not be a big deal right? Well, (spoiler alert) it depends on your needs and the needs of your team.

In this post, I intend to provide some insight into what each platform can offer you and your team. It is worth noting that I use an internally hosted version of GitLab day to day in a professional team setting while I mainly use GitHub.com these days as a remote repository for my personal side projects.

GitHub

Founded in 2008, GitHub was really the first major player to join the remote Git repository hosting services game. In fact, it became so large of a player that Microsoft decided to acquire GitHub for $7.5 billion. GitHub is used by millions of developers around the world and has become sort of a social network for people interested in technology. Large organizations trust GitHub to host major open source projects such as React, Angular, and TypeScript (not too surprising Microsoft trusts GitHub 😉).

GitLab

GitLab, while not quite as old as GitHub, has been around since 2013. However, in the last few years, GitLab has been exploding in popularity. GitLab has raised, and continues to raise, millions of dollars every year in funding from investors like ICONIQ Capital and Goldman Sachs. In fact, the Goldman Sachs technology team has found major success in their use of GitLab. One of the biggest and most compelling things about GitLab is that the product has an open core business model, meaning that individuals can download and self-host GitLab wherever they want completely for free.

Which service to choose

As I mentioned in the beginning of this post, it depends on what you and your team are after. Let's take a look at some of the offerings from each.

GitHub offers

  • Free private repositories with unlimited contributors (announced just yesterday!) along with 2,000 build minutes per repository per month
  • Collaborate with a team using cards, notes, etc.
  • GitHub Desktop app, GitHub Extension for Visual Studio, as well as a new CLI tool
  • Manage software releases
  • Mobile app that allows developers to view code, view commits, file issues, and more
  • Repository vulnerability scanning (with automatic fixes 😮😮)
  • CI/CD with Actions
  • & more!

GitLab offers

  • A complete DevOps platform
  • Free private repositories with 2,000 build minutes per group per month
  • Compliance management
  • Multiple tiers (core, starter, premium, ultimate)
  • Kubernetes integration
  • Kanban boards
  • Agile workflow features like Epics and milestones
  • CI/CD with their industry leading platform
  • & more!

Conclusion

After spending a considerable amount of time with both, I have found that they both have their positives and negatives. I personally would much rather work with GitLab's CI/CD platform over GitHub's Actions platform, but I love the community and projects that live on GitHub. In the end, I think it's worth trying out both platforms and getting a sense of what works best for you Luckily, both platforms have excellent free options at this point in time, so I would highly recommend taking advantage of that. As always, feel free to reach out to me @_jakewheeler and let me how you feel about GitHub and GitLab. 😀

Jake