For a technical enterprise or a developer team, the most valuable assets are codes. Enginers in the teams write, modify, delete, share codes every day. Want to make them work efficiently, we need tools and services to manage codes.
Git is the most popular code management tools ( version control system ).
Github is the most popular code management service for open source projects and close source projects. There are 40 million users are using Github, 100 million repositories are hosted by Github, in August 2019.
GitLab is a GitHub-like service. Now it becomes a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security.
A lot of people think Gitlab is best chose for enterprise or close code repository. But this may only because they don’t know there is an enterprise version of Github exist. I am helping a lot of customers to build their code management, CICD procedures. Some of them are using Github enterprise, and others are using Gitlab. So I have the chance to use and test both these two products.
Now, let’s try to make a compare:
For open-source projects ( public repositories ), there is no limit and free.
But free users only can collaborate with up to 3 people in one close source project ( private repositories ). Github has four kinds of pricing plans. As following:
|$0||$7 /month||$9 per user/month|
Starts at $25/month for 5 users
|need contact sales|
(less than $7/month)
For small teams of fewer than ten people, the Pro plan is enough. Bigger teams may find the Team plan is handy. For big enterprises, the Enterprise plan is best. If you want to host the service on your servers, the only choice is the Enterprise plan.
Gitlab has four kinds of pricing plans too. As following:
|$0||$4 pre user/month||$19 pre user/month||$99 pre user/month|
All the four plans support you to host the service on your servers. So a lot of companies obsess about self-host like Gitlab. They usually use the free community version of Gitlab. ( GitLab Community Edition is a stripped-down, free, on-premises installation of GitLab. It is commonly used as a gateway for customers to use GitLab Enterprise Edition. )
We can find that when we have a large team and more large Gitlab is more expensive than Github. So 3 million organizations are using GitHub, including half the Fortune 500.
Github enterprise can provide better performance because Github.com has a lot of users. As I just mentioned, there are 40 million users are using Github, 100 million repositories are hosted by Github. So the Github team has tons of experience to provide good performance.
And after Microsoft acquired Github, they brought a lot of money to Github. So Github has all the money to hire talents to build a strong product.
3. User Experience
Github has a better product design and user experience. In the beginning, Gitlab was just a copy of Github. Now, Github still has better user experience compare to Gitlab.
I have a customer that is a very large company. They use Gitlab open-source version as a base to customize an in-house code management system. But one of their internal team bought a Github enterprise plan. Because they want to use the code review system of Github. But according to the company’s policy, the codes must save at their own code management system. So they make a routine to sync codes from their own code management system to Github enterprise. So they can do all code review in Github experience.
And another customer modifies Gitlab to make their internal code management system too. But they buy a Github to use as an outsource code management system. Their external supplier must use the outsource code management system. So they can monitor progress and codes.
After Microsoft bought Github, Github made a lot of effort at security. And security is the highest priority for a lot of companies. Github has more experience in security.
And now Github has security alerts for vulnerable dependencies and Token scanning. And after Github acquired Semmle at Github Universe 2019, Github announced CodeQL. Using CodeQL security experts in your company can use a query to find all variants of a vulnerability, eradicating it forever.
What Do You Think?
Now I’d like to turn things over to you:
Github vs Gitlab Which one is your favorite?
Or maybe you have a tip that I didn’t cover here.
Either way, let me know and leave a comment below.