Skip to main content

Git vs GitHub vs GitLab vs Bitbucket

Summary: this is the most common confusion among beginners. Git is a tool that lives on your computer. GitHub, GitLab, Bitbucket are web services that host Git projects. You can use Git without any of these three services. This lesson clarifies everything, then compares the platforms.


1. The fundamental distinction, in one picture

  • Git = free, open-source software (git.exe, git on Linux/macOS).
  • GitHub / GitLab / Bitbucket = services that use Git to let you store your projects online, share them, collaborate, trigger pipelines, and so on.

2. The email analogy

It is the most effective way to explain this to a non-technical person.

Nobody asks "what is the difference between email and Gmail?" — the question answers itself. It is exactly the same with Git and GitHub.


3. What Git does on its own

Without any external platform, Git alone already lets you:

  • Record every modification (commit).
  • Browse the project's complete history.
  • Return to any past version.
  • Create branches to experiment, then merge them.
  • Compare two versions of the same file.

All of this works offline, without an account, without internet. A Git folder is self-contained.


4. What the platforms add

Services like GitHub, GitLab or Bitbucket add a collaborative layer on top of Git:

In other words: Git manages the versions, the platforms manage the team around them.


5. Comparison of the main platforms

PlatformVendorStrengthsPrefer it if…
GitHubMicrosoftThe largest, huge ecosystem, powerful GitHub Actions, built-in CopilotYou want visibility (open source, portfolio, community)
GitLabGitLab Inc.Complete DevOps suite, historic CI/CD pioneer, free self-hostable editionYou want to self-host (sovereignty, regulatory constraints)
BitbucketAtlassianNative integration with Jira and Confluence, free plans for small teamsYou are already in the Atlassian ecosystem
Gitea / ForgejoCommunityLightweight, installs on a small server, 100% open sourceYou want to self-host without GitLab's complexity
CodebergNon-profit associationFree Gitea hosting, open-source ethicsYou are a non-commercial open-source project

6. A Git project can live on several platforms at once

Since Git is distributed, the same project can be synchronized simultaneously with several platforms — a common practice in open source for redundancy.

It is also the resilience strategy used by big open-source projects (Linux, PostgreSQL…) that refuse to depend on a single company.


7. Do I have to pay?

No, not to start. Free plans cover the majority of personal and educational uses:

PlatformFree plan covers…Switch to paid when…
GitHubUnlimited public and private repositories, limited ActionsTeam > 3 people with fine-grained access, high CI/CD minutes
GitLabUnlimited repositories, CI/CD limited in minutesYou want premium features (advanced review, security)
Bitbucket5 free users on private repositoriesTeam > 5 people

For this discovery course, the free plan of any of the three is more than enough.


8. What to choose in 2026?

  • You are starting out, you want a portfolio, you are a student?GitHub, without hesitation. It is the de facto standard, recruiters look there first.
  • You are in a company with sovereignty constraints?self-hosted GitLab or Gitea.
  • Your team already uses Jira, Confluence, Trello (Atlassian)?Bitbucket makes life easier.

The essential point: whatever the platform, it is the same Git underneath. Moving from one to another is trivial. Do not waste time choosing "the best one" — get started.


Remember in 30 seconds

  • Git = a tool on your machine.
  • GitHub, GitLab, Bitbucket = services that host Git projects online.
  • Useful analogy: Git is to code what email is to messages.
  • Every platform stores the same Git underneath — the choice does not lock in your code.

Next: How Git works, without commands →