DEV Community

Ezhil Arasan
Ezhil Arasan

Posted on

Git / Github / Gitlab

What is git?


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.
Git is lightning fast and has a huge ecosystem of GUIs, hosting services, and command-line tools.
96% of professional developers use Git.

Tools
The community has built a huge number of tools to make it easier to use Git. While you can use Git on its own, most Git users use some of these extra tools. There are editor integrations, GUIs, tools for resolving merge conflicts, hosting services, and much more.

Git
1) A web-based platform that hosts Git repositories and enables collaboration through pull requests, issues and team management.
2) Works on a centralized hosting model for sharing and managing repositories online.
3) Provides a web-based UI + integrations along with Git command support.
4) Hosted on the cloud (web platform).
5) Focuses on collaboration workflows like pull requests, issues and code reviews.
6) Hosts repositories and manages team collaboration and access control.

Why Use Git?
Using Git helps developers manage their code more effectively, reduces the risk of conflicts, and enhances collaboration. It’s an essential tool for both individual projects and team-based development.

GitLab

GitLab is a repository hosting manager tool developed by GitLab Inc and used for the software development process. It provides a variety of management by which we can streamline our collaborative workflow for completing the software development lifecycle. It also allows us to import the repository from Google Code, Bitbucket, etc.It is owned by GitLab Inc.

Features of GitLab
1) Open-source community edition repository management platform.
2) Easy Maintaining of a repository on a server.
3) Offers tools like Group Milestones, Time Tracking Issue Tracker, etc. for effective development.
4) More Spontaneous User interface and authentication features.
5) User Permission and Branch protection are enhanced.

Why Use GitLab?
GitLab is ideal for teams looking for a comprehensive solution that combines version control with project management and CI/CD. Its flexibility and extensive features make it a popular choice among organizations of all sizes.

Advantages
1) GitLab is freely available and is open source for community edition
2) It is a cloud-native application and is highly secure.

Disadvantage
1) GitLab is available with many bugs and it makes the user experience sloppy.
2) It is difficult to manage code reviews for first-timers.

GitHub

GitHub is a repository hosting service tool that features collaboration and access control. It is a platform for programmers to fix bugs together and host open-source projects. GitHub is designed for the developers and to help them track their changes into a project through the repository.It is owned by Microsoft Corporation.

Features of GitHub
1) Specifies milestones and labels to the projects.
2) Comparison view between branches is allowed.
3) GitHub Pages allows us to publish and host websites within GitHub.
4) Syntax highlight feature.
5) It allows third-party API integrations for bug tracking and cloud hosting.

Why Use GitHub?
GitHub not only simplifies the process of using Git but also offers a social aspect to coding, allowing developers to connect, share knowledge, and contribute to open-source projects. It’s an invaluable resource for building a portfolio and gaining visibility in the developer community.

Advantage
1) It helps us create an organized document for the project.
2) It is used for sharing the work in front of the public.

Disadvantage
1) It is not open-source.
2) It supports only Git version control.

Refrence
https://git-scm.com/community
https://www.geeksforgeeks.org/git/git-vs-github/
https://www.geeksforgeeks.org/git/difference-between-gitlab-and-github/

Top comments (0)