GIT, GITHUB and GITLAB

What is GIT, GITHUB, GITLAB
GIT is a source code version control system. GIT is a Distributed Version control system.
GITHUB and GITLAB are services that provide remote access to and from GIT repository.
Gihub is built on Git (Git is the free and open source distributed version control system).
Specifically GITHUB is a free service hosted on GITHUB.COM website and GITLAB is also a service like GITHUB which any organization can use to host this service internally.
As of June 2018 Microsoft has acquired Github

Here is a discussion on the stackoverflow website on the difference between GIT and GITHUB. However it does not say anything about GITLAB. So I created this post to highlight the difference between git, github and gitlab.

GIT is not a programming language. Developers download GIT on their local workstation so that they can review, manage and commit their software versions locally to their GIT repository installed on their workstation. Since GIT is a distributed software versioning system, each developer maintains their own copy of the repository which is actually a clone or copy of the Central repository hosted on a Central server. This local repository contains complete version tracking capabilities and history of changes. Each developer continues to work independently and commit changes to their individual local repository without any dependency on other developers and team or a Central server. They can update from the Central repository via a pull command and receive the latest changes in the code. Similarly they can upload their code and affect changes to the central repository via a push command.

As per GITHUB website there are now over 24 million developers using their service. Here is quote from GITHUB 
With a community of 24 million developers, there are plenty of opportunities to connect with like-minded developers and the projects they create.
GITHUB offers other services besides source code versioning, viz. Code review, Project Management, Team Management, Social Coding and of course code hosting and documentation. GITLAB on the other hand is an internally hosted and managed service which organizations host to provide access to their employees and team members. GITLAB is available for windows and linux operating systems. If organizations install GITLAB internally then they have to install, operate and maintain the gitlab software. For developers who have their local git repository, can work with both github and gitlab.
GIT was developed by no other than the founder of the Linux Operating system, Linux Torvalds. All linux developers use git as their software version control system. Over the past few years GIT has emerged as the leading source code versioning system.
GIT provides visual tracking tools to view and understand the non-linear development history since there are several developers working independently which is typical in a distributed development environment.

Here is an interesting case study of why Microsoft bought Github.
Difference between Git and Github.


Comments

Post a Comment

Popular posts from this blog

VMware fix for Invalid manifest and ova file import failed errors

SOAPUI - import certificate

Session Timeout in Oracle Access Manager