Gitea vs Forgejo vs GitLab self-hosted 2026 : quelle forge Git choisir
Comparatif technique Gitea, Forgejo et GitLab CE 2026 : benchmarks RAM, CI/CD, gouvernance et cas d'usage pour choisir la meilleure forge Git self-hosted.
La gestion du code source en 2026 ne se rĂ©sume plus Ă un simple dĂ©pĂŽt git clone. Elle implique lâintĂ©gration continue, le dĂ©ploiement automatisĂ©, la gestion de la sĂ©curitĂ© et la collaboration en temps rĂ©el. Pour les Ă©quipes qui refusent le vendor lock-in ou les coĂ»ts exorbitants des plateformes SaaS, lâauto-hĂ©bergement reste la rĂ©fĂ©rence. Cependant, le paysage des forges Git open source a considĂ©rablement Ă©voluĂ© depuis la prise de contrĂŽle de Gitea Ltd par Lizard Global en 2023, crĂ©ant une scission majeure avec la communautĂ©.
Aujourdâhui, vous avez trois acteurs majeurs Ă Ă©valuer pour votre infrastructure CI/CD interne : Gitea, la solution âstandardâ devenue commerciale ; Forgejo, le fork communautaire garant de la neutralitĂ© ; et GitLab Community Edition, le gĂ©ant complet mais gourmand. Le choix nâest pas seulement technique, il est aussi politique et opĂ©rationnel. Cet article dĂ©cortique les trois solutions sur le plan de lâempreinte systĂšme, des fonctionnalitĂ©s DevOps, de la gouvernance et de la facilitĂ© de dĂ©ploiement.
Empreinte SystÚme : Le duel de la légÚreté contre la puissance brute
La premiĂšre barriĂšre Ă lâentrĂ©e pour une forge self-hosted est souvent matĂ©rielle. La diffĂ©rence entre Gitea/Forgejo et GitLab est abyssale, reflĂ©tant deux philosophies dâarchitecture totalement opposĂ©es.
Gitea et Forgejo : LâefficacitĂ© en Go
Gitea, Ă©crit en Go, est rĂ©putĂ© pour son empreinte mĂ©moire dĂ©risoire. Dans une installation minimale sur un environnement de production standard, un serveur Gitea consomme entre 50 Mo et 150 Mo de RAM au repos. Lâajout de Gitea Actions (le moteur CI/CD natif) augmente cette consommation, mais reste contenue. Sur un Raspberry Pi 4 ou 5, ou un VPS dâentrĂ©e de gamme (1 Go de RAM), Gitea tourne de maniĂšre fluide, gĂ©rant des dizaines de dĂ©pĂŽts et des pipelines concurrents sans swapping.
Forgejo, étant un fork direct de Gitea, hérite de cette architecture. La consommation est identique. La différence ne se situe pas dans le code binaire, mais dans les patches communautaires qui visent souvent à optimiser davantage la base de données ou à ajouter des fonctionnalités de fédération (ActivityPub) sans alourdir le noyau.
Pour un dĂ©veloppeur solo ou une petite Ă©quipe (< 10 personnes) sur un VPS basique, Gitea et Forgejo offrent un ratio performance/coĂ»t matĂ©riel imbattable. Vous pouvez hĂ©berger votre forge, votre base de donnĂ©es PostgreSQL et votre runner CI sur la mĂȘme machine physique sans voir le serveur planter.
GitLab CE : Le monolithe Ruby
GitLab, Ă©crit principalement en Ruby on Rails et Go, est une application Enterprise. Lâinstallation âOmnibusâ de GitLab CE nĂ©cessite un minimum de 4 Go de RAM pour fonctionner correctement, et recommande vivement 8 Go pour une expĂ©rience fluide avec plusieurs projets. Au repos, le processus unicorn et les workers Sidekiq consomment dĂ©jĂ 1 Ă 2 Go. DĂšs que vous activez les pipelines CI/CD, les runners et le registry Docker, la consommation peut facilement dĂ©passer 4-6 Go.
GitLab est conçu pour ĂȘtre hĂ©bergĂ© sur des serveurs dĂ©diĂ©s ou des clusters Kubernetes. Lâinstaller sur un VPS Ă 5âŹ/mois est une expĂ©rience frustrante, sujette aux crashes OOM (Out Of Memory) lors des tĂąches de maintenance comme le nettoyage des jobs ou la compilation des assets.
Tableau comparatif des ressources
| CritĂšre | Gitea | Forgejo | GitLab CE |
|---|---|---|---|
| Langage principal | Go | Go | Ruby / Go |
| RAM au repos | 50 - 150 Mo | 50 - 150 Mo | 1.5 - 2.5 Go |
| RAM Recommandée | 1 Go | 1 Go | 4 - 8 Go |
| CPU | Faible (1 vCPU suffit) | Faible (1 vCPU suffit) | ĂlevĂ© (2-4 vCPU min) |
| Taille du binaire | ~50 Mo | ~50 Mo | Multi-services (Giant) |
| Dépendances DB | SQLite, PostgreSQL, MySQL | SQLite, PostgreSQL, MySQL | PostgreSQL uniquement |
Fonctionnalités Core : Gestion de code et collaboration
Sur le fondement de la gestion de code, les trois forges sont compétentes, mais leurs approches diffÚrent.
Pull Requests et Merge Requests
Gitea et Forgejo utilisent le terme âPull Requestâ (inspirĂ© de GitHub). Lâinterface est Ă©purĂ©e, rapide et intuitive. La crĂ©ation de PR, les revues de code, les commentaires en ligne et les validations obligatoires sont parfaitement fonctionnels. La diffĂ©rence entre Gitea et Forgejo sur ce point est quasi nulle, Forgejo ayant parfois un avantage sur la rĂ©activitĂ© des correctifs de bugs liĂ©s Ă lâinterface.
GitLab utilise le terme âMerge Requestâ (MR). Lâinterface est plus dense, offrant plus dâinformations contextuelles directement dans la vue de la MR. GitLab excelle dans la gestion des workflows complexes, avec des approbations hiĂ©rarchiques, des protections de branches granulaires et une intĂ©gration native avec les âIssue Boardsâ qui sont bien plus puissants que les simples âProjectsâ de Gitea.
Wiki et Documentation
Gitea et Forgejo intĂšgrent un Wiki basĂ© sur Markdown par dĂ©pĂŽt. Câest simple, lĂ©ger et suffisant pour 90% des projets. La documentation est versionnĂ©e avec le code, ce qui est un avantage majeur pour la cohĂ©rence.
GitLab propose un Wiki intĂ©grĂ© par projet, mais aussi des fonctionnalitĂ©s plus avancĂ©es comme les âSnippetsâ partagĂ©s entre projets et une meilleure gestion des pages statiques (GitLab Pages). Si votre Ă©quipe a besoin dâune documentation centralisĂ©e complexe, GitLab offre plus de leviers de configuration.
Registry Docker
Toutes les trois forges intĂšgrent un registry de conteneurs.
- Gitea/Forgejo : Le registry est natif, facile à configurer et stocke les images directement sur le systÚme de fichiers local ou via S3. Il est limité en fonctionnalités avancées de scanning de sécurité par défaut, mais suffisant pour un usage interne.
- GitLab : Le registry est robuste, intégré au systÚme de permissions des groupes et offre des fonctionnalités de scanning de vulnérabilités (via SAST/DAST) plus poussées, bien que souvent réservées aux plans payants pour les fonctionnalités avancées de sécurité.
CI/CD : Le vrai facteur différenciant
Câest ici que le choix devient critique. La CI/CD nâest plus un luxe, câest une exigence.
Gitea Actions et Forgejo Actions
Historiquement, Gitea manquait de CI/CD intĂ©grĂ©, forçant les utilisateurs Ă installer Jenkins ou Drone CI sĂ©parĂ©ment. Avec lâarrivĂ©e de Gitea Actions, le moteur a Ă©tĂ© portĂ© pour ĂȘtre compatible avec le format GitHub Actions (.github/workflows).
- CompatibilitĂ© : La plupart des workflows GitHub fonctionnent âout of the boxâ. Vous pouvez rĂ©utiliser les mĂȘmes
actions/checkout,actions/setup-node, etc. - Performance : Gitea Actions est exécuté par des runners légers. Sur une petite infrastructure, cela reste gérable.
- Forgejo : Forgejo a fait un pas de plus en optimisant la compatibilitĂ© et en ajoutant des fonctionnalitĂ©s spĂ©cifiques Ă la fĂ©dĂ©ration. Si vous utilisez Forgejo, vous bĂ©nĂ©ficiez de la mĂȘme compatibilitĂ© GitHub Actions, souvent avec une communautĂ© plus rĂ©active sur les bugs dâintĂ©gration.
Le principal inconvĂ©nient reste la complexitĂ© de gestion des runners Ă grande Ă©chelle. Pour 50 dĂ©pĂŽts, câest parfait. Pour 500, vous devrez gĂ©rer une flotte de runners Docker ou Kubernetes, ce qui annule une partie de la simplicitĂ© initiale.
GitLab CI/CD
GitLab CI/CD est considéré comme la référence du marché. Il est plus mature, plus flexible et offre une intégration plus profonde avec le reste de la plateforme.
- YAML avancé : Support des includes, des templates, et une logique de pipeline plus complexe (parallélisme conditionnel, artefacts partagés entre jobs).
- Runners : La gestion des runners est plus centralisĂ©e et offre plus dâoptions de scalabilitĂ© automatique.
- ĂcosystĂšme : Une bibliothĂšque dâactions communautaire immense, bien que moins compatible avec le format GitHub Actions pur (GitLab utilise son propre format de YAML, bien que des outils de migration existent).
Pour les Ă©quipes DevOps exigeantes, GitLab CI offre un niveau de contrĂŽle et de visibilitĂ© (graphiques de pipeline, analyses de couverture, traces dĂ©taillĂ©es) que Gitea/Forgejo nâatteignent pas encore pleinement.
Gouvernance et Ăthique : Pourquoi Forgejo existe
La décision de choisir entre Gitea et Forgejo ne relÚve pas de la technique, mais de la gouvernance.
En 2023, Gitea Ltd (lâentitĂ© commerciale derriĂšre Gitea) a Ă©tĂ© rachetĂ©e par Lizard Global, une sociĂ©tĂ© de capital-investissement. Bien que Gitea reste open source (MIT License), cette acquisition a soulevĂ© des inquiĂ©tudes au sein de la communautĂ© sur la dĂ©pendance Ă une entitĂ© privĂ©e Ă but lucratif. Les craintes portaient sur une possible fermeture future, une monĂ©tisation agressive des fonctionnalitĂ©s ou une perte de contrĂŽle communautaire.
En réponse, la communauté a créé Forgejo en juillet 2023. Forgejo est un fork de Gitea, maintenu par la Forgejo Foundation, une organisation à but non lucratif.
Les différences clés de gouvernance
- Neutralité : Forgejo est garanti par une fondation indépendante, assurant que le projet ne sera jamais racheté par un acteur commercial cherchant à en tirer un profit exclusif.
- FĂ©dĂ©ration : Forgejo investit activement dans la fĂ©dĂ©ration via ActivityPub. Lâobjectif est de permettre aux utilisateurs de Forgejo dâinteragir entre eux et avec dâautres plateformes fĂ©dĂ©rĂ©es (comme Mastodon ou PeerTube), crĂ©ant un Ă©cosystĂšme dĂ©centralisĂ©. Gitea nâa pas dâambition fĂ©dĂ©rale Ă court terme.
- Compatibilité : Forgejo vise à rester 100% compatible avec Gitea. Vous pouvez migrer de Gitea vers Forgejo (et vice-versa) sans perte de données.
Si vous ĂȘtes un puriste du logiciel libre, mĂ©fiant envers les rachats de capital-risque, ou si vous croyez en lâavenir du web dĂ©centralisĂ©, Forgejo est le choix Ă©thique. Pour la majoritĂ© des entreprises pragmatiques qui ne lisent pas les communiquĂ©s de presse, Gitea reste une option solide et mature.
Migration et ĂcosystĂšme : LâhĂ©ritage GitHub
La facilité de migration est un argument de vente majeur pour les forges modernes.
Gitea et Forgejo : Lâimport GitHub
Les deux forges disposent dâun outil dâimport GitHub officiel. Vous pouvez coller lâURL dâun repo GitHub public ou privĂ© (avec token), et Gitea/Forgejo cloneront le code, les issues, les labels et les branches.
- Limites : Les Pull Requests ne sont pas migrĂ©s automatiquement (ils deviennent des Issues ou doivent ĂȘtre recréés). Les commentaires de PR peuvent ĂȘtre perdus selon la complexitĂ©.
- Gitea Actions : La plus grande force de Gitea/Forgejo est la rĂ©utilisation des workflows GitHub Actions. Si votre Ă©quipe est dĂ©jĂ habituĂ©e Ă GitHub, la courbe dâapprentissage est quasi nulle.
GitLab : Importation native
GitLab possĂšde un outil dâimport GitHub trĂšs puissant qui migre les projets, les issues, les milestones et les Ă©tiquettes. Cependant, la migration des pipelines CI/CD nĂ©cessite une réécriture complĂšte du .gitlab-ci.yml, car la syntaxe est diffĂ©rente de GitHub Actions.
Cas dâusage concrets : Qui choisit quoi ?
Profil 1 : Le Développeur Solo / Le Side Project
- Besoin : Héberger du code, CI/CD simple, faible coût, accÚs depuis un Raspberry Pi ou un vieux VPS.
- Choix : Gitea ou Forgejo.
- Pourquoi : Installation en 5 minutes avec un binaire unique. Consommation RAM < 200 Mo. Vous pouvez tout faire tourner sur un serveur Ă 3âŹ/mois. Lâinterface est lĂ©gĂšre et ne ralentit pas votre machine de dĂ©veloppement.
Profil 2 : La Petite Ăquipe Startup (< 15 devs)
- Besoin : Collaboration, revues de code, CI/CD fiable, registry Docker, mais budget limité.
- Choix : Forgejo (si éthique prioritaire) ou Gitea.
- Pourquoi : Vous avez besoin de plus de fonctionnalitĂ©s quâun simple repo, mais GitLab serait trop lourd et cher Ă maintenir. Gitea/Forgejo offrent un excellent Ă©quilibre fonctionnalitĂ©s/poids. Avec 2-3 VPS (un pour la forge, un pour les runners CI), vous avez une stack DevOps complĂšte.
Profil 3 : LâĂquipe DevOps / Entreprise (15+ devs)
- Besoin : Pipeline CI/CD complexe, sécurité avancée, conformité, gestion de multiples projets interdépendants, support professionnel.
- Choix : GitLab CE (ou EE).
- Pourquoi : La puissance de GitLab CI/CD, la gestion des groupes de niveau supĂ©rieur, les outils de SAST/DAST intĂ©grĂ©s et lâĂ©cosystĂšme de plugins en font la seule option viable pour des workflows DevOps industriels. Vous devez prĂ©voir un budget infrastructure consĂ©quent (VPS 8Go RAM+ ou cluster K8s) et du temps dâadministration.
Quel choix selon ton profil ?
Voici une matrice de décision rapide pour vous aider à trancher :
| Votre Priorité | Recommandation | Justification |
|---|---|---|
| Minimalisme / Matériel limité | Gitea / Forgejo | Binaire unique, RAM < 150Mo. Idéal pour RPi ou VPS basiques. |
| Ăthique / DĂ©centralisation | Forgejo | Gouvernance Ă but non-lucratif, roadmap ActivityPub. |
| Compatibilité GitHub Actions | Gitea / Forgejo | Support natif du format .github/workflows. |
| CI/CD Avancé / Enterprise | GitLab CE | Pipeline YAML puissant, sécurité intégrée, gestion complexe. |
| Facilité de maintenance | Gitea / Forgejo | Mise à jour par remplacement du binaire. Pas de dépendances lourdes. |
| Support Professionnel Officiel | GitLab / Gitea | GitLab offre un support payant robuste. Gitea Ltd propose du support. Forgejo repose sur la communauté. |
FAQ : Gitea vs Forgejo
1. Puis-je migrer de Gitea vers Forgejo facilement ?
Oui. Forgejo est conçu pour ĂȘtre un fork direct. Vous pouvez arrĂȘter Gitea, installer Forgejo, pointer la configuration sur le mĂȘme dossier de donnĂ©es et la mĂȘme base de donnĂ©es. La migration est gĂ©nĂ©ralement transparente, bien quâil soit toujours recommandĂ© de faire une sauvegarde complĂšte avant toute opĂ©ration.
2. Gitea Actions est-il aussi performant que GitLab CI ?
Pour des workflows simples à moyens (build, test, deploy), Gitea Actions est trÚs performant et compatible GitHub. Cependant, pour des pipelines complexes nécessitant des artefacts volumineux, du parallélisme conditionnel avancé ou une orchestration fine des jobs, GitLab CI reste supérieur en termes de fonctionnalités et de stabilité à grande échelle.
3. Forgejo va-t-il remplacer Gitea ?
Non. Les deux projets coexisteront. Gitea continuera dâĂ©voluer sous lâĂ©gide de Gitea Ltd, tandis que Forgejo Ă©voluera sous la Forgejo Foundation. La concurrence entre les deux favorisera lâinnovation et la qualitĂ© du code pour les utilisateurs, chacun pouvant choisir la forge qui correspond le mieux Ă ses valeurs et besoins techniques.
4. Est-il nĂ©cessaire dâutiliser un VPS puissant pour hĂ©berger Gitea/Forgejo ?
Absolument pas. Câest lâun de leurs plus grands avantages. Un VPS avec 1 Go de RAM et 1 vCPU est largement suffisant pour une installation personnelle ou une petite Ă©quipe. Si vous prĂ©voyez dâhĂ©berger des milliers de dĂ©pĂŽts ou des centaines de runners CI, alors oui, vous devrez scaler, mais pour 95% des cas dâusage self-hosted, une machine entrĂ©e de gamme suffit amplement.
Conclusion
Le choix entre Gitea, Forgejo et GitLab ne se fait pas sur la seule base de la technique, mais sur lâalignement entre vos contraintes matĂ©rielles, vos besoins DevOps et vos valeurs organisationnelles.
- Choisissez Gitea si vous voulez la solution la plus mature, simple et compatible avec lâĂ©cosystĂšme GitHub, sans vous soucier de lâaspect gouvernance.
- Choisissez Forgejo si vous privilĂ©giez la neutralitĂ©, lâĂ©thique open source et la vision fĂ©dĂ©rĂ©e, tout en conservant la lĂ©gĂšretĂ© de Gitea.
- Choisissez GitLab CE si vous avez les ressources infrastructurelles et humaines pour gĂ©rer un outil puissant, complexe et complet, et que vous avez besoin dâune suite DevOps intĂ©grĂ©e de niveau entreprise.
Pour la majoritĂ© des dĂ©veloppeurs et petites Ă©quipes auto-hĂ©bergeant leur code en 2026, Gitea ou Forgejo reprĂ©sentent le meilleur rapport simplicitĂ©/performance. GitLab reste le roi incontestĂ© pour les grandes structures, mais son coĂ»t (en argent et en temps dâadministration) le rĂ©serve Ă ceux qui en ont rĂ©ellement besoin.