Gemigit

Gemigit est une forge-logiciel minimaliste sous le protocole gemini, écrit en Go.

Fonctionnalités

Le but principal de Gemigit est de permettre aux utilisateurs de créer et de gérer leurs répertoires git. L'image ci-dessous démontre la page de gestion d'un utilisateur connecté.

account

Par défaut, les répertoires sont privées après leur création, ils ne peuvent être vu que par leur propriétaire ou par les utilisateurs ayant une permission de lecture sur le répertoire. Il est possible de rendre son répertoire publique sur la page de configuration du répertoire. Les répertoires publiques peuvent être vu par tout le monde et ils sont affichés dans la liste de répertoires publiques comme on peut le voir dans l'image ci-dessous.

public

Les utilisateurs peuvent gérer les permissions de leurs répertoires, donnant la permission d'écriture ou de lecture à certains utilisateurs ou groupes.

private

Les utilisateurs peuvent créer des groupes pour faciliter la gestion des permissions de leur répertoires. Par exemple, au lieu d'ajouter les mêmes utilisateurs à plusieurs répertoires, il est possible d'ajouter ces utilisateurs à un groupe et d'ajouter ce groupe à de multiple répertoires.

group

Gemigit peut être configuré en modifiant le fichier de configuration, plusieurs options sont disponibles, comme choisir d'utiliser LDAP pour l'authentification des utilisateurs, ou de choisir entre SQLite ou MySQL pour la base données à utiliser. Il aussi possible de configurer Gemigit en mode "stateless" enfin de balancer le trafic entre plusieurs instances.

configuration

Déploiement

Le code source est disponible sur github.

Le répertoire peut aussi être cloner en utilisant cette commande :

git clone https://github.com/RealMelkor/Gemigit.git