Git et Gitlab

Sensibilisation de l’encadrement du SSP par Damien Dotta

SSP/DEMESIS/PAOS

05/07/2024

1 Le contrôle de version

Principe général :

Le versioning consiste à conserver la version d’une entité logicielle quelconque de façon à pouvoir la retrouver facilement même après l’apparition et la mise en place de versions plus récentes.

Sans outil de contrôle de version

Exemple de ce que l’on peut trouver sur un server :

2 Pourquoi faire du contrôle de version ?

Le versioning permet de :

  • Obtenir de la traçabilité : on sait qui a changé quoi, quand, comment et pourquoi => cf. exemple sur l’IPPAP
  • Travailler collectivement sur les mêmes programmes en même temps => cf. ici
  • L’expérimentation lors des développements sans risques (à l’aide des branches) => cf. ici
  • Faire de la relecture (revues de codes…) cf. ici
  • Revenir en arrière cf. ici

Avec une forge comme gitlab, il permet en plus de :

  • D’archiver le code
  • Partager le code au sein d’une communauté

3 Qu’est-ce qu’on versionne ?


On versionne les fichiers de type texte

Par exemple :

  • Les programmes R, Python, SAS…
  • La documentation au format texte, Markdown…
  • Les fichiers quarto, Rmarkdown…
  • Les fichiers de configuration de type yaml par exemple…

Tout le reste n’est pas (sauf exception) versionné !

4 Points abordés dans la formation

  • Notions de bases sur le fonctionnement et l’intérêt du contrôle de version
  • Configuration de Git sous Cerise et de sa liaison avec la forge interne Gitlab
  • Utilisation de Git au quotidien avec l’essentiel des commandes
  • Présentation des fonctionnalités majeures de Gitlab (groupes, système de ticketing, tableau kanban…)
  • Comment restaurer un état précédent de son projet ?
  • Comment travailler à plusieurs sur un même projet (notions de branches, workflow, conflits…)

Quelques exercices pratiques accompagnent la formation pour que les participants puissent mettre en pratique les notions abordées.

5 Outils utilisés

L’apprentissage de Git pendant les formations se fera avec les 3 outils suivants :


Avec RStudio déjà installé sous Cerise pour les commandes essentielles.

Avec le terminal disponible sous Cerise pour les commandes plus spécifiques.

Avec le package R gitssp pour utiliser Git avec des fonctions R.


Les fonctionnalités de la forge interne Gitlab seront également présentées pour illustrer les concepts présentés.

6 Calendrier des formations à venir

Lien vers le diaporama complet : c’est ici

Des formations prévues en 2024 :

  • Fin juin : à Toulouse
  • Fin septembre : à Paris
  • Mi octobre : à Lyon

En tant que nouvelle formation au catalogue du SSP, le nombre de places est limité par session. Cependant le nombre de formations pourra être augmenté pour répondre au besoin si nécessaire.