Handbook GitLab ESR

Dans l’état des lieux des forges de l’ESR, il est apparu que la majorité des forges auto-hébergées de l’ESR sont des instances GitLab.

Ce document a vocation de partager les bonnes pratiques d’utilisation de ce logiciel dans le cadre de l’ESR.

1 - Bonnes pratiques Git

Bonnes pratiques d’utilisation de Git

Fonctionnement des dépôts

  • Faire des commits fonctionnels (un commit = une fonctionnalité) Cela facilitera la recherche de bugs.
  • Utiliser des branches pour les fonctionnalités et les corrections de bugs. Cela permettra de garder le code principal propre et stable.
  • Utiliser des étiquettes pour marquer les versions stables du code. Cela permettra aux utilisateurs de télécharger la version correcte du code.
  • Protéger la branche principale. Cela empêchera les modifications accidentelles.

En plus des dépôts

  • Mettre en place des pipelines CI/CD. Cela permettra d’automatiser les tests et les déploiements du code.
  • Documenter le code. Cela permettra aux autres développeurs de comprendre le fonctionnement du code.

Ressources git

  • Learning Git Branching pour apprendre les commandes importantes de git et visualiser leurs effets.
  • Git flow pour comprendre le rôle des branches main, develop et feature dans un projet git.
  • GitHub flow une version plus simple du lien précédent basée sur deux branches seulement.

2 - Intégration continue, déploiement continu

Ressources

3 - Configurer une instance GitLab

4 - Cycle de vie des projets

Création des projets

Archivage des projets

5 - Organisation des projets

Bonnes pratiques pour l’organisation de projets sur GitLab

Organisation des projets individuels

  • Utiliser des noms de dépôts clairs et descriptifs. Cela permettra aux utilisateurs de trouver facilement le dépôt qu’ils recherchent.
  • Structurer le dépôt de manière logique. Utilisez des sous-répertoires pour regrouper les fichiers associés.
  • Mettre en place des conventions de nommage cohérentes pour les fichiers et les branches. Cela facilitera la navigation dans le dépôt.
  • Rédiger des messages de commit clairs et concis. Cela permettra aux autres développeurs de comprendre les modifications apportées.

Organisation des projets par groupe

  • Utiliser des groupes pour regrouper les projets connexes. Cela permettra de mieux organiser les projets et de contrôler les autorisations.
  • Définir des autorisations au niveau du groupe et du projet. Cela permettra de contrôler qui peut accéder aux projets et aux données.
  • Utiliser des sous-groupes pour organiser les groupes. Cela permettra de créer une hiérarchie de groupes.
  • Créer des modèles de groupe pour définir les paramètres par défaut des nouveaux projets. Cela permettra de gagner du temps et de garantir la cohérence des projets.
  • Utiliser les fonctionnalités de gestion de portefeuille de projets de GitLab. Cela permettra de suivre l’avancement des projets et de prendre des décisions stratégiques.

En plus de ces bonnes pratiques, il est important de s’adapter aux besoins spécifiques de votre équipe et de votre projet. Il n’y a pas de solution unique pour tous, et la meilleure façon d’organiser vos projets GitLab est de trouver ce qui fonctionne le mieux pour vous.

Ressources

Voici quelques ressources supplémentaires qui pourraient vous être utiles :

6 - Ressources pédagogiques

Cette page regroupe des ressources pédagogiques sur les forges en général, des forges particulières, ou des composants spécifiques produites par des collègues.

Ressources d’Arnauld BIGANZOLI

Contact mail : biganzoli[at]laplace.univ-tlse.fr

Il s’agit de supports utilisés pour des enseignements à l’INSA de Toulouse.

N’hésitez pas à regarder dans les commentaires du présentateur (sous les slides), il y a plein d’info et de lien complémentaire pour approfondir le sujet :

Ressources CIRAD

Le CIRAD propose un ensemble de ressources concernant le fonctionnement de sa forge.

7 - Gestion des utilisateurs

Ressources