+ 1

What is GitLab?

GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers.
GitLab is a tool in the Code Collaboration & Version Control category of a tech stack.
GitLab is an open source tool with 20.1K GitHub stars and 5.3K GitHub forks. Here’s a link to GitLab's open source repository on GitHub

Who uses GitLab?

1711 companies reportedly use GitLab in their tech stacks, including trivago, Avocode, and Coderus.

7918 developers on StackShare have stated that they use GitLab.

GitLab Integrations

Postman, Confluence, Sentry, Codeship, and Bugsnag are some of the popular tools that integrate with GitLab. Here's a list of all 70 tools that integrate with GitLab.

Why developers like GitLab?

Here’s a list of reasons why companies and developers use GitLab
GitLab Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose GitLab in their tech stack.

Michael Kelly
Michael Kelly
Senior Software Engineer at StackShare · | 14 upvotes · 122.4K views
atACK FoundryACK Foundry
GitLab Pages
GitLab CI

I use GitLab when building side-projects and MVPs. The interface and interactions are close enough to those of GitHub to prevent cognitive switching costs between professional and personal projects hosted on different services.

GitLab also provides a suite of tools including issue/project management, CI/CD with GitLab CI, and validation/landing pages with GitLab Pages. With everything in one place, on an #OpenSourceCloud GitLab makes it easy for me to manage much larger projects on my own, than would be possible with other solutions or tools.

It's petty I know, but I can also read the GitLab code diffs far more easily than diffs on GitHub or Bitbucket...they just look better in my opinion.

See more
Tim Abbott
Tim Abbott
Founder at Zulip · | 13 upvotes · 107.2K views

I have mixed feelings on GitHub as a product and our use of it for the Zulip open source project. On the one hand, I do feel that being on GitHub helps people discover Zulip, because we have enough stars (etc.) that we rank highly among projects on the platform. and there is a definite benefit for lowering barriers to contribution (which is important to us) that GitHub has such a dominant position in terms of what everyone has accounts with.

But even ignoring how one might feel about their new corporate owner (MicroSoft), in a lot of ways GitHub is a bad product for open source projects. Years after the "Dear GitHub" letter, there are still basic gaps in its issue tracker:

  • You can't give someone permission to label/categorize issues without full write access to a project (including ability to merge things to master, post releases, etc.).
  • You can't let anyone with a GitHub account self-assign issues to themselves.
  • Many more similar issues.

It's embarrassing, because I've talked to GitHub product managers at various open source events about these things for 3 years, and they always agree the thing is important, but then nothing ever improves in the Issues product. Maybe the new management at MicroSoft will fix their product management situation, but if not, I imagine we'll eventually do the migration to GitLab.

We have a custom bot project, http://github.com/zulip/zulipbot, to deal with some of these issues where possible, and every other large project we talk to does the same thing, more or less.

See more

A bit difference in GitHub and GitLab though both are Version Control repository management services which provides key component in the software development workflow. A decision of choosing GitHub over GitLab is major leap extension from code management, to deployment and monitoring alongside looking beyond the code base hosting provided best fitted tools for developer communities.

  • Authentication stages - With GitLab you can set and modify people’s permissions according to their role. In GitHub, you can decide if someone gets a read or write access to a repository.
  • Built-In Continuous Integrations - GitLab offers its very own CI for free. No need to use an external CI service. And if you are already used to an external CI, you can obviously integrate with Jenkins, etc whereas GitHub offers various 3rd party integrations – such as Travis CI, CircleCI or Codeship – for running and testing your code. However, there’s no built-in CI solution at the moment.
  • Import/Export Resources - GitLab offers detailed documentation on how to import your data from other vendors – such as GitHub, Bitbucket to GitLab. GitHub, on the other hand, does not offer such detailed documentation for the most common git repositories. However, GitHub offers to use GitHub Importer if you have your source code in Subversion, Mercurial, TFS and others.

Also when it comes to exporting data, GitLab seems to do a pretty solid job, offering you the ability to export your projects including the following data:

  • Wiki and project repositories
  • Project uploads
  • The configuration including webhooks and services
  • Issues with comments, merge requests with diffs and comments, labels, milestones, snippets, and other project entities.

GitHub, on the other hand, seems to be more restrictive when it comes to export features of existing GitHub repositories. * Integrations - #githubmarketplace gives you an essence to have multiple and competitive integrations whereas you will find less in the GitLab.

So go ahead with better understanding.

See more
Jaime Leonardo Suncin Cruz
Jaime Leonardo Suncin Cruz

Keep with GitHub if you feel comfortable, If you want to switch to other keep in mind the change of mindset and you will need time to adapt, i'm not saying that GitLab is bad or difficult just the opposite, but it can be overwhelming because it have more integrated features (I love this) than GitHub , what it means more configs available that you can mess up.

See more
Daniel Quinn
Daniel Quinn
Senior Developer at Founders4Schools · | 11 upvotes · 7.7K views

I strongly recommend GitLab because it's got all the tools you need: no fiddling with 3rd party components that want sweeping permissions on all of your GitHub repositories just to do a single CI job. GitLab's got everything from review tools, to integrated CI, scheduled builds, hosted containers, test coverage badges, sprint planning boards, issue tracker, wiki, and an API if you want to poke at this all programmatically. All of this, for Free (as in beer and freedom) hosted by GitLab or even by you on-site.

See more
Logan Campos
Logan Campos
Computer Programmer at cryptosec.dev · | 10 upvotes · 40.9K views

As an former administrator for GitLab enterprise I can say for closed source development it is an amazing tool to have. It does however have limits. For starters you will need to bother your unix administrators to assign a license to you. And after that happens the same guys start getting cranky if you use git LFS(Large File Storage) or manage a couple repos about ~100MBish. if you fork open source efforts remember to git clone --depth 1 ! As a free user of GitHub , I don't get crazy CI pipelines or crazy project management tools. I also don't need it !

See more

GitLab's Features

  • Manage git repositories with fine grained access controls that keep your code secure
  • Perform code reviews and enhance collaboration with merge requests
  • Each project can also have an issue tracker and a wiki
  • Used by more than 100,000 organizations, GitLab is the most popular solution to manage git repositories on-premises
  • Completely free and open source (MIT Expat license)
  • Powered by Ruby on Rails

GitLab Alternatives & Comparisons

What are some alternatives to GitLab?
GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
Bitbucket gives teams one place to plan projects, collaborate on code, test and deploy, all with free private Git repositories. Teams choose Bitbucket because it has a superior Jira integration, built-in CI/CD, & is free for up to 5 users.
In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
The goal of this project is to make the easiest, fastest and most painless way to set up a self-hosted Git service. With Go, this can be done in independent binary distribution across ALL platforms that Go supports, including Linux, Mac OS X, and Windows.
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
See all alternatives

GitLab's Stats

GitLab's Followers
7658 developers follow GitLab to keep up with related blogs and decisions.
Ahmet Erşin
Mikesh Maharjan
Ricardo Interiano
Serhat Pars
Joseph MacMillan
Samuel Olugbemi