Soft Serve : Serveur Git Auto-Hébergé Simple

février 12, 2025

Soft Serve est un serveur Git auto-hébergé et facile à utiliser, conçu pour la ligne de commande. Il offre une interface utilisateur conviviale (TUI) via SSH, vous permettant de gérer facilement les dépôts, de parcourir les fichiers et d’effectuer des tâches Git courantes.

Soft Serve prend en charge plusieurs protocoles, notamment SSH, HTTP et Git, vous offrant une flexibilité dans l’accès et la gestion de vos dépôts. La prise en charge de Git LFS pour les backends HTTP et SSH assure un traitement efficace des fichiers volumineux.

Interface utilisateur de Soft Serve présentant un thème de crème glacéeInterface utilisateur de Soft Serve présentant un thème de crème glacée

Avec Soft Serve, vous pouvez :

  • Cloner des dépôts via SSH, HTTP ou le protocole Git.
  • Gérer les dépôts via SSH.
  • Créer des dépôts à la demande via SSH ou git push.
  • Parcourir les dépôts, les fichiers et les commits avec une interface utilisateur accessible via SSH.
  • Afficher des fichiers via SSH avec ou sans coloration syntaxique et numéros de ligne.

Soft Serve offre un contrôle d’accès facile :

  • Authentification SSH par clé publique.
  • Autoriser/interdire l’accès anonyme.
  • Ajouter des collaborateurs avec des clés publiques SSH.
  • Les dépôts peuvent être publics ou privés.
  • Jetons d’accès utilisateur.

Vous pouvez installer Soft Serve via des gestionnaires de paquets tels que brew, winget, pacman, nix-env, apt et yum ou télécharger directement le fichier binaire depuis la page de publication. Vous pouvez également l’installer avec go install.

Pour configurer le serveur, exécutez simplement soft serve. Cette commande créera un dossier data contenant tous les dépôts, les clés SSH et la base de données. Vous pouvez personnaliser le chemin d’accès aux données avec la variable d’environnement SOFT_SERVE_DATA_PATH. Lors de la première exécution de Soft Serve, assurez-vous que la variable d’environnement SOFT_SERVE_INITIAL_ADMIN_KEYS est définie sur votre clé SSH autorisée.

La configuration du serveur est stockée dans le fichier config.yaml dans le dossier de données. Vous pouvez remplacer ces paramètres avec des variables d’environnement. Soft Serve prend en charge SQLite et Postgres pour sa base de données.

Soft Serve gère l’authentification et l’autorisation de votre serveur via SSH. Il prend en charge les protocoles HTTP et SSH pour Git LFS. Vous pouvez gérer les utilisateurs, l’accès et les dépôts via l’interface de ligne de commande SSH.

Vous pouvez créer des utilisateurs, ajouter des clés publiques, créer des dépôts, gérer les collaborateurs et modifier les métadonnées des dépôts avec des commandes SSH. Soft Serve prend également en charge les dépôts imbriqués et la fonctionnalité de mirroring.

De plus, Soft Serve prend en charge les webhooks pour les dépôts, vous permettant d’automatiser des tâches basées sur les événements des dépôts. Il fournit également une TUI pour parcourir les dépôts via SSH et prend en charge les hooks Git côté serveur pour une personnalisation accrue. Vous pouvez copier du texte dans votre presse-papiers via SSH dans la TUI.

Leave A Comment

Create your account