GitHub domine l’open source, GitLab excelle en CI/CD intégrée, et Gitea/Forgejo offrent une alternative légère auto-hébergée. Chaque plateforme ajoute au-dessus de Git une interface web, des pull/merge requests, de la CI/CD et de la gestion de projet. Ce guide compare les cinq principales pour vous aider à choisir.
Prérequis : Héberger un serveur Git et Pull requests et code review.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Comparer les 5 principales plateformes Git (GitHub, GitLab, Bitbucket, Gitea, Forgejo)
- Distinguer SaaS et self-hosted selon vos contraintes de souveraineté
- Évaluer l’intégration CI/CD native de chaque plateforme
- Choisir la plateforme adaptée à votre contexte équipe ou entreprise
Pourquoi une plateforme Git ?
Section intitulée « Pourquoi une plateforme Git ? »Un serveur Git nu (bare repo + SSH) suffit pour versionner du code. Mais dès qu’une équipe grandit, il manque :
- Interface web : navigation dans le code, historique visuel
- Pull/Merge requests : revue de code structurée
- CI/CD intégrée : tests et déploiements automatiques
- Gestion de projet : issues, boards, milestones
- Contrôle d’accès : permissions par branche, par équipe
Les plateformes Git regroupent ces fonctionnalités dans un seul outil.
Le plus populaire, avec plus de 100 millions de développeurs. Racheté par Microsoft en 2018.
Points forts :
- Écosystème open source inégalé (forks, stars, sponsors)
- GitHub Actions : CI/CD puissante avec marketplace de workflows
- Copilot : assistant IA intégré
- GitHub Packages (registre npm, Docker, Maven…)
- Codespaces (environnements cloud)
- GitHub Pages pour les sites statiques
Limites :
- SaaS uniquement (GitHub Enterprise Server existe mais coûteux)
- Plans gratuits limités pour les dépôts privés en équipe
- Pas de CI/CD aussi profondément intégrée que GitLab (pipelines séparées des merge requests)
Idéal pour : projets open source, développeurs individuels, startups.
La plateforme DevSecOps complète. Disponible en SaaS (gitlab.com) et en self-hosted (Community Edition gratuite).
Points forts :
- CI/CD native : pipelines définies dans
.gitlab-ci.yml, intégrées aux merge requests - DevSecOps complet : SAST, DAST, dependency scanning, container scanning
- Auto DevOps : pipelines préconfigurées
- Registre de conteneurs intégré
- GitLab Pages
- Self-hosted gratuit (Community Edition)
Limites :
- Interface plus complexe que GitHub
- Consomme plus de ressources (RAM) en self-hosted
- Certaines fonctionnalités réservées aux plans Premium/Ultimate
Idéal pour : entreprises, équipes DevOps/DevSecOps, organisations voulant du self-hosted.
→ Installer et opérer GitLab CE self-managed
Plateforme légère et rapide, écrite en Go. Fork initial de Gogs, maintenant indépendant.
Points forts :
- Ultra-léger : tourne sur un Raspberry Pi (< 200 Mo RAM)
- Installation simple (binaire unique ou conteneur Docker)
- Interface proche de GitHub
- Gitea Actions (compatible GitHub Actions depuis v1.19)
- Registre de paquets intégré
- Open source (licence MIT)
Limites :
- Communauté plus petite
- Moins de fonctionnalités avancées (pas de SAST/DAST natif)
- CI/CD plus récente et moins mature
Idéal pour : homelab, petites équipes, self-hosted léger.
→ Installer et opérer Gitea self-hosted
Fork communautaire de Gitea, créé fin 2022 pour garantir une gouvernance communautaire (sous l’égide de Codeberg e.V.).
Points forts :
- Même base que Gitea, gouvernance communautaire
- Forgejo Actions (dérivé de Gitea Actions)
- Utilisé par Codeberg.org (alternative éthique à GitHub)
- Compatibilité avec l’écosystème Gitea (plugins, thèmes)
- Engagement fort sur le logiciel libre
Limites :
- Divergence progressive avec Gitea
- Écosystème naissant, documentation en construction
- Moins de retours d’expérience en entreprise
Idéal pour : militants du logiciel libre, organisations qui privilégient la gouvernance communautaire.
→ Installer et opérer Forgejo self-managed
Bitbucket
Section intitulée « Bitbucket »Plateforme Git d’Atlassian, intégrée à Jira, Confluence et Bamboo/Compass.
Points forts :
- Intégration Atlassian native (Jira, Confluence)
- Bitbucket Pipelines (CI/CD intégrée)
- Dépôts privés gratuits (jusqu’à 5 utilisateurs)
- Bitbucket Data Center (self-hosted)
Limites :
- Communauté open source réduite
- Interface parfois lente
- Arrêt du support Mercurial (2020)
- Moins d’innovation récente par rapport à GitHub/GitLab
Idéal pour : équipes déjà dans l’écosystème Atlassian.
Comparatif synthétique
Section intitulée « Comparatif synthétique »| Critère | GitHub | GitLab | Gitea | Forgejo | Bitbucket |
|---|---|---|---|---|---|
| Licence | Propriétaire | MIT (CE) | MIT | EUPL | Propriétaire |
| Self-hosted | Payant (GHES) | Gratuit (CE) | Gratuit | Gratuit | Payant (DC) |
| SaaS gratuit | Oui | Oui | Non (cf. Codeberg) | Codeberg.org | Oui (5 users) |
| CI/CD | Actions | Native (.gitlab-ci.yml) | Actions (v1.19+) | Actions | Pipelines |
| Sécurité (SAST) | Via Actions | Natif (Ultimate) | Via Actions | Via Actions | Via Pipes |
| Registre Docker | Packages | Natif | Natif | Natif | Non |
| Ressources serveur | N/A (SaaS) | Élevées (4 Go+ RAM) | Faibles (200 Mo) | Faibles (200 Mo) | Moyennes |
| Communauté | Très large | Large | Moyenne | Petite | Moyenne |
| Intégration | Marketplace | DevSecOps complet | API compatible | API compatible | Atlassian Suite |
Comment choisir ?
Section intitulée « Comment choisir ? »Le choix dépend de trois critères principaux :
1. SaaS ou self-hosted ?
- SaaS : GitHub (open source), GitLab.com (DevOps), Bitbucket (Atlassian)
- Self-hosted léger : Gitea ou Forgejo
- Self-hosted complet : GitLab CE
2. Taille de l’équipe ?
- Solo / petite équipe : GitHub ou Gitea
- Équipe moyenne : GitLab CE ou GitHub Team
- Grande entreprise : GitLab Ultimate ou GitHub Enterprise
3. Besoin de CI/CD intégrée ?
- CI/CD profondément intégrée : GitLab (pipelines dans les merge requests, environments, review apps)
- CI/CD flexible : GitHub Actions (marketplace riche)
- CI/CD minimale : Gitea Actions ou pipelines externes (Jenkins, Drone)
Migration entre plateformes
Section intitulée « Migration entre plateformes »Toutes les plateformes offrent des outils d’import :
- GitHub :
github.com/new/import(depuis Git, SVN, Mercurial) - GitLab : import natif depuis GitHub, Bitbucket, Gitea, etc.
- Gitea : migration depuis GitHub, GitLab, Bitbucket (issues + PRs incluses)
Le code Git lui-même est toujours portable (c’est un dépôt Git standard). Ce sont les issues, PRs et CI/CD qui nécessitent un outil de migration.
À retenir
Section intitulée « À retenir »- GitHub : roi de l’open source, Actions et Copilot
- GitLab : DevSecOps complet, CI/CD native, self-hosted gratuit
- Gitea/Forgejo : légers, auto-hébergés, idéals pour le homelab
- Bitbucket : pertinent dans l’écosystème Atlassian
- Le code Git est toujours portable — seuls les métadonnées (issues, PRs, CI) nécessitent une migration
- Commencez simple, migrez quand le besoin se fait sentir