A propos de Gitea

Gitea est un service Git auto-hébergé très simple à installer et à utiliser. Il est similaire à GitHub, Bitbucket ou Gitlab. Le développement initial provient sur Gogs, mais nous l’avons forké puis renommé Gitea. Si vous souhaitez en savoir plus sur les raisons pour lesquelles nous avons fait cela, lisez cette publication sur le blog.

Objectif

Le but de ce projet est de fournir de la manière la plus simple, la plus rapide et sans complication un service Git auto-hébergé. Grâce à Go, cela peut se faire via un binaire indépendant fonctionnant sur toutes les plateformes que Go prend en charge, y compris Linux, macOS et Windows, même sur des architectures comme ARM ou PowerPC.

Fonctionalités

  • Tableau de bord de l’utilisateur
    • Choix du contexte (organisation ou utilisateur actuel)
    • Chronologie de l’activité
      • Révisions (Commits)
      • Tickets
      • Demande d’ajout (Pull request)
      • Création de dépôts
    • Liste des dépôts
    • Liste de vos organisations
    • Liste des dépôts miroires
  • Tableau de bord des tickets
    • Choix du contexte (organisation ou utilisateur actuel)
    • Filtres
      • Ouvert
      • Fermé
      • Vos dépôts
      • Tickets assignés
      • Vos tickets
      • Dépôts
    • Options de tri
      • Plus vieux
      • Dernière mise à jour
      • Nombre de commentaires
  • Tableau de bord des demandes d’ajout
    • Identique au tableau de bord des tickets
  • Types de dépôt
    • Miroire
    • Normal
    • Migré
  • Notifications (courriel et web)
    • Lu
    • Non lu
    • Épinglé
  • Page d’exploration
    • Utilisateurs
    • Dépôts
    • Organisations
    • Moteur de recherche
  • Interface personnalisables
  • Fichiers publiques remplaçables (logo, css, etc)
  • Protection CSRF et XSS
  • Support d’HTTPS
  • Configuration des types et de la taille maximale des fichiers téléversés
  • Journalisation (Log)
  • Configuration
    • Base de données
      • MySQL
      • PostgreSQL
      • SQLite3
      • MSSQL
      • TiDB (expérimental)
    • Fichier de configuration
    • Panel d’administration
      • Statistiques
      • Actions
        • Suppression des comptes inactifs
        • Suppression des dépôts archivés
        • Suppression des dépôts pour lesquels il manque leurs fichiers
        • Exécution du garbage collector sur les dépôts
        • Ré-écriture des clefs SSH
        • Resynchronisation des hooks
        • Recreation des dépôts manquants
      • Status du server
        • Temps de disponibilité
        • Mémoire
        • Nombre de goroutines
        • et bien plus…
        • Gestion des utilisateurs
        • Recherche
        • Tri
        • Dernière connexion
        • Méthode d’authentification
        • Nombre maximum de dépôts
        • Désactivation du compte
        • Permissions d’administration
        • Permission pour crééer des hooks
        • Permission pour crééer des organisations
        • Permission pour importer des dépôts
      • Gestion des organisations
        • Membres
        • Équipes
        • Avatar
        • Hooks
      • Gestion des depôts
        • Voir toutes les informations pour un dépôt donné et gérer tous les dépôts
      • Méthodes d’authentification
        • OAuth
        • PAM
        • LDAP
        • SMTP
      • Visualisation de la configuration
        • Tout ce que contient le fichier de configuration
      • Alertes du système
        • Quand quelque chose d’inattendu survient
      • Surveillance
        • Processus courrants
        • Tâches CRON
          • Mise à jour des dépôts miroires
          • Vérification de l’état des dépôts
          • Vérification des statistiques des dépôts
          • Nettoyage des anciennes archives
    • Variables d’environement
    • Options de ligne de commande
  • Internationalisation (21 langues)
  • Courriel
    • Notifications
    • Confirmation d’inscription
    • Ré-initialisation du mot de passe
  • Support de reverse proxy
    • subpaths inclus
  • Utilisateurs
    • Profil
      • Nom
      • Prénom
      • Courriel
      • Site internet
      • Date de création
      • Abonnés et abonnements
      • Organisations
      • Dépôts
      • Activité
      • Dépôts suivis
    • Paramètres
      • Identiques au profil avec en plus les éléments ci-dessous
      • Rendre l’adresse de courriel privée
      • Avatar
        • Gravatar
        • Libravatar
        • Personnalisé
      • Mot de passe
      • Courriels multiples
      • Clefs SSH
      • Applications connectées
      • Authentification à double facteurs
      • Identités OAuth2 attachées
      • Suppression du compte
  • Dépôts
    • Clone à partir de SSH / HTTP / HTTPS
    • Git LFS
    • Suivre, Voter, Fork
    • Voir les personnes qui suivent, les votes et les forks
    • Code
      • Navigation entre les branches
      • Création ou téléversement de fichier depuis le navigateur
      • URLs pour clôner le dépôt
      • Téléchargement
        • ZIP
        • TAR.GZ
      • Édition en ligne
        • Éditeur Markdown
        • Éditeur de texte
          • Coloration syntaxique
        • Visualisation des Diffs
        • Visualisation
        • Possibilité de choisir où sauvegarder la révision
      • Historiques des fichiers
      • Suppression de fichiers
      • Voir le fichier brut
    • Tickets
      • Modèle de ticket
      • Jalons
      • Étiquettes
      • Affecter des tickets
      • Filtres
        • Ouvert
        • Ferme
        • Personne assignée
        • Créer par vous
        • Qui vous mentionne
      • Tri
        • Plus vieux
        • Dernière mise à jour
        • Nombre de commentaires
      • Moteur de recherche
      • Commentaires
      • Joindre des fichiers
    • Demande d’ajout (Pull request)
      • Les mêmes fonctionnalités que pour les tickets
    • Révisions (Commits)
      • Representation graphique des révisions
      • Révisions par branches
      • Moteur de recherche
      • Voir les différences
      • Voir les numéro de révision SHA
      • Voir l’auteur
      • Naviguer dans les fichiers d’une révision donnée
    • Publication
      • Pièces jointes
      • Titre
      • Contenu
      • Suppression
      • Définir comme une pré-publication
      • Choix de la branche
    • Wiki
      • Import
      • Éditeur Markdown
    • Paramètres
      • Options
        • Nom
        • Description
        • Privé / Publique
        • Site internet
        • Wiki
          • Activé / Désactivé
          • Interne / externe
        • Tickets
          • Activé / Désactivé
          • Interne / externe
          • URL personnalisable pour une meilleur intégration avec un gestionnaire de tickets externe
        • Activer / désactiver les demandes d’ajout (Pull request)
        • Transfert du dépôt
        • Suppression du wiki
        • Suppression du dépôt
      • Collaboration
        • Lecture / Écriture / Administration
      • Branches
        • Branche par défaut
        • Protection
      • Webhooks
      • Git hooks
      • Clefs de déploiement

Configuration requise

  • Un simple Raspberry Pi est assez puissant pour les fonctionnalités de base.
  • Un processeur double coeurs et 1Gb de RAM est une bonne base pour une utilisation en équipe.
  • Gitea est censé être exécuté avec un compte utilisateur dédié et non root, aucun autre mode de fonctionnement n’est pris en charge. (NOTE: Dans le cas où vous l’exécutez avec votre propre compte d’utilisateur et que le serveur SSH intégré est désactivé, Gitea modifie le fichier ~ /.ssh /authorized_keys afin que vous ne soyez plus capable de vous connecter interactivement).
  • Consultez Semantic UI pour la liste des navigateurs supportés.
  • La taille minimale supportée officielement est de 1024*768, l’interface utilisateur peut toujours fonctionner à une taille plus petite, mais ce n’est pas garanti et les problèmes remontés ne seront pas corrigés.

Composants

Logiciels et services

  • Drone (Intégration continue)