Before we dive into definition for Gitlab, first we need to understand few terminologies. We often come across these terms like Git, Gitlab, GitHub, and Bitbucket. Let's see definiton of all these as below −
Git - It is a source code versioning system that lets you locally track changes and push or pull changes from remote resources.
GitLab, GitHub, and Bitbucket - Are services that provides remote access to Git repositories. In addition to hosting your code, the services provide additional features designed to help manage the software development lifecycle. These additional features include managing the sharing of code between different people, bug tracking, wiki space and other tools for 'social coding'.
GitHub is a publicly available, free service which requires all code (unless you have a paid account) be made open. Anyone can see code you push to GitHub and offer suggestions for improvement. GitHub currently hosts the source code for tens of thousands of open source projects.
GitLab is a github like service that organizations can use to provide internal management of git repositories. It is a self hosted Git-repository management system that keeps the user code private and can easily deploy the changes of the code.
GitLab was found by Dmitriy Zaporozhets and Valery Sizov in October 2011. It was distributed under MIT license and the stable version of GitLab is 10.4 released in January 22, 2018.
GitLab is great way to manage git repositories on centralized server. GitLab gives you complete control over your repositories or projects and allows you to decide whether they are public or private for free.
GitLab is a platform for managing Git repositories.
GitLab offers free public and private repositories, issue-tracking and wikis.
GitLab is a user friendly web interface layer on top of Git, which increases the speed of working with Git.
GitLab provides its own Continuous Integration (CI) system for managing the projects and provides user interface along with other features of GitLab.
GitLab provides GitLab Community Edition version for users to locate, on which servers their code is present.
GitLab provides unlimited number of private and public repositories for free.
The Snippet section can share small amount of code from a project, instead of sharing whole project.
While pushing and pulling repositories, it is not as fast as GitHub.
GitLab interface will take time while switching from one to another page.