Should I Migrate from GitHub to GitLab?

The week of June 5, 2018 was indeed full of excitement in the technical community. Microsoft purchased GitHub for $7.5B USD. Then, people began to migrate their repositories from GitHub to GitLab.

I disagree with the FUD that Microsoft will somehow ruin GitHub. Sure, there are some skeletons in Microsoft’s closet, but during the past few years the company has embraced open source and has developed hundreds of public repositories. GitHub is obviously committed to open source and developed other projects such as the Open Source Guide and Open Source Friday. I think this merger will be a solid partnership that benefits open source and software development.

I am a technical writer not a software developer and I use GitHub, Microsoft software, and open source software. With all the chatter on social media such as the Twitter hashtag #movingtogitlab I decided to familiarize myself with GitLab. I wanted to experience the platform for myself and answer the question: should I migrate to GitLab?

Self-hosted or SaaS

GitLab offers two methods to use their open source software and services similar to features from GitHub.

  • Self-hosted. For a software development company there is the benefit of security in a non-public repository. The GitLab application can be installed on a private server in your data center or a secured server in a cloud-based solution. Of course, you will need to administer the server and application.

  • SaaS. For a solo technical writer or software developer, a public repository on is a good solution. The application is managed in the cloud and you can focus on your passion to write documentation or develop software. And, you can collaborate with others on your project.

GitLab’s free self-hosted and SaaS versions have community technical support. There are pay-plans if you need faster responses from technical support or enhanced GitLab features.

A Different Product

As I read blog posts and tweets a question recurred: is there a difference between GitHub and GitLab? Both platforms offer:

  • Repositories to share and collaborate on code and documentation.
  • Support for static websites that use static site generators such as Jekyll.
  • Git as your computer’s command line interface to work with repository clones.
  • Private repositories; although GitLab has an advantage because they do not charge fees.

I found the difference in a video when Emily Chang interviewed GitLab CEO Sid Sijbrandij on Bloomberg Technology. Mr. Sijbrandij explained that GitLab is an application for the entire software development lifecycle, rather than a code repository. The GitLab product page shows how a team can use the application to plan, develop, and release software. The Continuous Integration (CI) and Continuous Deployment (CD) features will no doubt be attractive for software development teams. As will the integration with Kubernetes on the Google Cloud Platform.

Open Source

The GitHub Enterprise software that is used for self-hosted instances is not open source so you cannot modify the source code. GitLab’s Community Edition (CE) software is open source, or as they call it open core. The GitLab Enterprise Edition (EE) is not open source. Software developers want the ability to customize their development environments so the ability to modify source code is a huge benefit.

A cool feature is that GitLab offers their self-hosted GitLab Ultimate and SaaS GitLab Gold products for free to projects that are for open source and education.

Those of us interested in open source like to contribute to our favorite applications. GitLab recognizes that and people can contribute to the platform in several ways:

  • Documentation
  • Documentation Translation
  • Software Development

Where Do I Go From Here?

My initial answer is that I do not need to migrate from GitHub to GitLab. As a solo technical writer I am a casual user who manages a couple repositories and on occasion contributes to other projects. After I set up my GitLab account and built a repository I learned that for my purposes there are no major differences between GitLab and GitHub. I do see the value in GitLab for software development projects where multiple teams collaborate to produce a product. I will learn more about GitLab so that I can contribute to projects hosted on GitLab.

Microsoft’s acquisition of GitHub and the sudden rise in GitLab’s popularity are exciting developments in the open source world. The competition between GitHub and GitLab will most certainly result in some amazing innovations and choices. These events are fantastic news and I am optimistic about the future.

Information Sources
Microsoft Acquires GitHub
GitHub Prices
GitLab Self-hosted Prices SaaS Prices
GitLab Community Edition or Enterprise Edition