Travailler à plusieurs avec Git et GitLab

Durée2h30

Objectifs de la séance

L’objectif de cette séance est de maîtriser deux outils fondamentaux du développement logiciel collaboratif : Git et GitLab. Ces outils, et les concepts qui se cachent derrière, vous seront utiles non seulement dans le cadre de l’UE mais également lorsque vous serez amené(e)s à faire des développements logiciels dans votre vie professionnelle. Il est rare aujourd’hui qu’un logiciel soit développé par une seule personne, et même dans ce cas ces outils s’avèrent extrêmement utiles pour garder la trace de l’évolution du code et de sa documentation.

Le fil conducteur de la séance est un projet uv, comme celui que vous avez créé en séance 2. Ce choix n’est pas anodin : uv init place d’emblée votre projet sous contrôle de version, et le fichier .gitignore qu’il écrit répond directement à la question centrale du versionnage – qu’est-ce qui se partage, et qu’est-ce qui se reconstruit ? Vous verrez qu’on versionne pyproject.toml et uv.lock, jamais l’environnement .venv.

À la fin de la séance, vous devriez être capable d’expliquer le rôle que jouent Git et GitLab dans le développement d’un logiciel, de versionner un projet et de le publier sur le serveur de l’école, de récupérer et reconstruire le projet d’un(e) camarade, et de résoudre les conflits qui apparaissent inévitablement quand deux personnes modifient le même fichier.

Information

Pour cette séance, vous utiliserez l’instance GitLab de l’école : https://gitlab-df.imt-atlantique.fr. Vérifiez dès maintenant que vous pouvez vous y connecter avec vos identifiants.

Avant le cours

Pré-requis

Pour pouvoir commencer à travailler sur l’activité pratique, vous devez remplir les conditions suivantes :

  • Veuillez apporter votre propre ordinateur.
  • Assurez-vous d’avoir Visual Studio Code et uv installés et fonctionnels, comme vu en séance 2.
  • Assurez-vous de pouvoir vous connecter au réseau de l’école et à l’instance GitLab de l’école.

Articles à étudier

Quatre fiches de cours accompagnent cette séance. La première donne le contexte, la deuxième la procédure d’installation à faire avant de venir, et les deux dernières servent de référence pendant l’activité.

Important

Installez et configurez Git avant de venir en classe, en suivant la fiche Installer Git. Les deux commandes git config --global user.name et git config --global user.email sont obligatoires : sans elles, votre premier commit sera refusé.

Pendant le cours

Activité pratique

La séance est consacrée à une activité pratique en deux parties, à faire dans l’ordre :

  1. Versionner un projet uv (1h15, seul(e)) – vous créez un projet, découvrez le dépôt Git que uv a créé pour vous, enregistrez vos premières versions, publiez le projet sur GitLab, et vérifiez qu’il est reproductible ailleurs.
  2. Travailler à plusieurs (1h15, en binôme) – vous partagez le dépôt, provoquez délibérément un conflit sur les dépendances puis un conflit sur le code, les résolvez, documentez le projet et pilotez le tout depuis Visual Studio Code.

Cliquez sur le lien ci-dessous :

Après le cours

Terminer l’activité pratique

Avant la prochaine séance, vous devez :

  • Terminer les parties non optionnelles de l’activité pratique.
  • Vous assurer que votre projet est bien publié sur GitLab, avec un README.md lisible et sans dossier .venv versionné.
  • Prendre le réflexe d’utiliser Git pour tous vos projets, y compris ceux que vous réalisez seul(e) : c’est le seul moyen de pouvoir revenir en arrière.

Préparer la prochaine séance

De plus, vous devez :

  • Vérifier la section « Avant le cours » de la séance suivante, et vous assurer de faire tout ce qui est nécessaire pour la préparer.