Frequently Asked Questions
What Is the Difference Between Git, GitHub, and GitLab?
Git is a version control system that enables a directory tree of files to be efficiently stored and transmitted, and is able to keep track of different revisions of these files. Git enables single or multiple users to collaborate on complex and long-lasting projects effectively by ensuring that collaborator’s changes are tracked and preserved. Git is free and open-source and typically used from the command-line.
GitHub is a commercial cloud-based system that provides Git features, as well as a set of related integrated services and tools. The advantage of GitHub for most organizations is that it relieves the organization of managing servers, backups, and other expensive tedium. Instead, users can collaborate and edit via a convenient web application, which also provides related services such as Issue-tracking. GitHub is free for users with public repositories (e.g., an open source project), but costs a monthly fee for private repositories (e.g., the source code for a yet-to-be-released video game).
GitLab is an open-source system that provides many of GitHub’s features, but is free and open. Organizations can either install a GitLab system onto their own servers, or they can adopt the hosted solution at GitLab.com which includes a free pricing plan as well as tiered pricing for additional features and privacy.