Gitea est une forge logicielle self-hosted écrite en Go, conçue pour être la solution la plus simple et légère d’hébergement Git. Avec un binaire unique consommant moins de 200 Mo de RAM, Gitea offre dépôts Git, pull requests, CI/CD (Gitea Actions), registre de paquets et gestion de projet — le tout dans une interface claire et performante. Utilisée par plus de 381 000 installations et téléchargée plus de 286 millions de fois via Docker, Gitea est soutenue par CommitGo Inc. qui propose également des offres Cloud et Enterprise.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »- Comprendre ce qu’est Gitea : son origine (fork de Gogs), son positionnement et son modèle économique
- Connaître les fonctionnalités principales : dépôts Git, CI/CD, registre de paquets, gestion de projet
- Identifier la stack technique : un binaire Go unique, bases de données supportées, composants
- Comparer les éditions : Open Source (gratuit), Enterprise et Cloud
- Évaluer si Gitea convient à votre contexte (ressources, équipe, besoin commercial)
Origine et modèle économique
Section intitulée « Origine et modèle économique »Gitea est un fork de Gogs (Go Git Service) créé en 2016. La quasi-totalité du code a été réécrite depuis. Le projet est porté par Gitea Ltd., rebaptisée CommitGo Inc., qui développe le produit et propose des offres commerciales.
| Aspect | Détail |
|---|---|
| Création | 2016 (fork de Gogs) |
| Organisation | CommitGo Inc. (anciennement Gitea Ltd.) |
| Licence | MIT |
| Certification | SOC 2 Type 2 |
| Code source | github.com/go-gitea/gitea |
| Contributeurs | 960+ |
| GitHub Stars | 51 000+ |
| Utilisateurs | Google, Two Sigma, Mastercard, MediaTek, OpenStack |
Stack technologique
Section intitulée « Stack technologique »Gitea est un binaire unique écrit en Go qui embarque tous les composants nécessaires.
| Composant | Technologie | Rôle |
|---|---|---|
| Serveur web | Go (Chi) | Interface web, API REST, serveur Git HTTP/SSH |
| ORM | XORM | Abstraction base de données |
| Base de données | SQLite, PostgreSQL, MySQL/MariaDB, MSSQL | Stockage des métadonnées |
| Indexeur de code | Bleve (intégré) ou Meilisearch/Elasticsearch | Recherche full-text |
| UI | Vue 3, Fomantic UI, CodeMirror | Interface utilisateur web et éditeur de code |
| CI/CD | Gitea Runner (Go) | Exécution des workflows Gitea Actions |
Configuration système minimale
Section intitulée « Configuration système minimale »| Composant | Minimum | Recommandé |
|---|---|---|
| CPU | 1 vCPU | 2 vCPU |
| RAM | 512 Mo | 1 Go |
| Disque | 1 Go (hors dépôts) | SSD recommandé |
| Git | 2.0+ | 2.18+ (commit-graph) |
| OS | Linux, macOS, Windows | Linux |
Fonctionnalités principales
Section intitulée « Fonctionnalités principales »Hébergement Git et revue de code
Section intitulée « Hébergement Git et revue de code »- Dépôts Git avec interface web, éditeur intégré et visualisation de diff
- Pull requests avec revue de code en ligne, discussions, approbations et merge automatique
- Branches protégées avec règles de merge configurables (statuts requis, approbateurs)
- Miroir de dépôts (pull et push) depuis/vers GitHub, GitLab et d’autres forges
- Signature GPG/SSH des commits et tags
- Git LFS intégré
CI/CD — Gitea Actions
Section intitulée « CI/CD — Gitea Actions »- Workflows YAML au format GitHub Actions (réutilisation directe de la plupart des Actions)
- Gitea Runner : exécuteur léger en Go avec support shell, Docker et LXC
- Téléchargement d’Actions depuis n’importe quel dépôt Git
- Matrice de jobs, secrets, artifacts et cache
Gestion de projet
Section intitulée « Gestion de projet »- Issues avec labels, milestones, assignations, dépendances et suivi de temps
- Tableaux Kanban (boards de projet par colonnes)
- Wiki intégré par dépôt (éditable en Markdown)
- Webhooks vers Slack, Discord, Mattermost, Telegram et endpoints personnalisés
- Templates d’issues et de pull requests
Registre de paquets
Section intitulée « Registre de paquets »Gitea intègre un registre de paquets supportant plus de 20 formats :
- Container Registry (images OCI/Docker)
- Langages : npm, PyPI, Maven, NuGet, Cargo, Composer, Go, RubyGems, Pub
- Infrastructure : Helm, Vagrant, Conda, Conan, Terraform
- Autres : Chef, CRAN, Debian, RPM, Alpine, Swift
Sécurité et contrôle d’accès
Section intitulée « Sécurité et contrôle d’accès »- Authentification : LDAP, SAML, OAuth2, PAM, SMTP
- Autorisations granulaires : permissions par dépôt, organisation et équipe
- 2FA (TOTP) et clés de sécurité (WebAuthn)
- Audit logs (édition Enterprise)
Éditions et tarifs
Section intitulée « Éditions et tarifs »Gitea propose trois modes de consommation.
L’édition open-source est le cœur du projet, distribuée sous licence MIT.
- Gratuit, sans limite d’utilisateurs ni de dépôts
- Toutes les fonctionnalités de base : Git, pull requests, CI/CD, registre de paquets
- Auto-hébergé sur votre infrastructure
- Support communautaire (forum, Discord, GitHub Issues)
- Mises à jour régulières (releases mineures fréquentes)
Gitea Enterprise ajoute des fonctionnalités et un support commercial au-dessus de l’édition open-source.
- 9,50 $ à 19 $/utilisateur/mois (engagement annuel)
- Déploiement self-managed (même binaire, licence Enterprise)
- SAML SSO, audit logs avancés, runners Kubernetes auto-scaling
- Support prioritaire avec SLA (email, téléphone, assistance à distance)
- Assistance à l’installation et aux mises à jour
- Essai gratuit de 30 jours
Gitea Cloud est l’offre SaaS managée par CommitGo.
- Hébergement dans la région et le fournisseur cloud de votre choix
- Pas d’infrastructure à gérer
- Mises à jour automatiques
- Inclut les fonctionnalités Enterprise
- Essai gratuit de 30 jours
Comparaison des éditions
Section intitulée « Comparaison des éditions »| Open Source | Enterprise | Cloud | |
|---|---|---|---|
| Tarif | 0 $ | 9,50–19 $/utilisateur/mois | Sur devis |
| Déploiement | Self-managed | Self-managed | SaaS managé |
| Utilisateurs | Illimités | Illimités | Illimités |
| CI/CD (Gitea Actions) | ✅ | ✅ | ✅ |
| Registre de paquets | ✅ | ✅ | ✅ |
| SAML SSO | ❌ | ✅ | ✅ |
| Audit logs avancés | ❌ | ✅ | ✅ |
| K8s AutoScaling Runners | ❌ | ✅ | ✅ |
| Support avec SLA | ❌ | ✅ | ✅ |
| SOC 2 Type 2 | ❌ | ✅ | ✅ |
Méthodes d’installation
Section intitulée « Méthodes d’installation »| Méthode | Description | Recommandée pour |
|---|---|---|
| Binaire | Téléchargement direct depuis dl.gitea.com | Serveurs Linux/macOS/Windows, contrôle maximal |
| Docker | Image officielle gitea/gitea | Déploiements conteneurisés |
| Package | Via gestionnaire de paquets (snap, brew, etc.) | Installation rapide |
| Kubernetes | Helm chart officiel | Orchestrations K8s |
| Depuis les sources | make build (Go 1.22+, Node.js 20+) | Développeurs, contributions |
Intégrations et écosystème
Section intitulée « Intégrations et écosystème »- tea : CLI officielle pour interagir avec Gitea depuis le terminal
- IDE : extensions VS Code, JetBrains (via API compatible GitHub)
- Communication : Slack, Discord, Mattermost, Telegram, Microsoft Teams (webhooks)
- CI/CD externe : Drone CI, Woodpecker CI, Jenkins (webhooks)
- Authentification : LDAP, Active Directory, OAuth2 (GitHub, GitLab, Google, Keycloak)
- Migration : import direct depuis GitHub, GitLab, Bitbucket, Gogs, OneDev
Gitea vs GitLab CE
Section intitulée « Gitea vs GitLab CE »| Critère | Gitea | GitLab CE |
|---|---|---|
| RAM minimum | ~200 Mo | ~4 Go |
| CPU minimum | 1 vCPU | 2 vCPU |
| Installation | 1 binaire (~100 Mo) | Package Omnibus (~1 Go) |
| CI/CD | Gitea Actions (compatible GitHub Actions) | GitLab CI (syntaxe propriétaire) |
| SAST/DAST intégré | Non | Oui (Ultimate) |
| Registre de paquets | 20+ formats | 10+ formats |
| Gestion de portefeuille | Non | Epics, Milestones (Premium+) |
| Offre commerciale | Enterprise + Cloud (CommitGo) | Premium + Ultimate (GitLab Inc.) |
| Complexité opérationnelle | Faible | Élevée |
À retenir
Section intitulée « À retenir »- Gitea est une forge Git self-hosted écrite en Go, légère (~200 Mo RAM) et performante, née en 2016 comme fork de Gogs
- Licence MIT — aucune restriction d’usage, y compris commercial
- Un binaire unique qui embarque serveur web, Git, base de données (SQLite possible), indexeur et registre de paquets
- Gitea Actions pour le CI/CD, quasi-compatible avec GitHub Actions
- 20+ formats de registre de paquets intégrés (Docker, npm, PyPI, Maven, Helm…)
- Trois éditions : Open Source (gratuit), Enterprise (9,50-19 $/utilisateur/mois) et Cloud (SaaS managé)
- Porté par CommitGo Inc. (certifié SOC 2 Type 2), utilisé par Google, Mastercard, Two Sigma
- Migration simple depuis GitHub, GitLab, Bitbucket et Gogs