Travailler à plusieurs avec Git et GitLab
Durée2h30Objectifs 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
uvinstallé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é.
- Pourquoi versionner ses fichiers.
- Installer Git.
- Git : gestion de versions.
- GitLab : héberger et partager un projet.
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 :
- Versionner un projet uv (1h15, seul(e)) – vous créez un projet, découvrez le dépôt Git que
uva créé pour vous, enregistrez vos premières versions, publiez le projet sur GitLab, et vérifiez qu’il est reproductible ailleurs. - 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.mdlisible et sans dossier.venvversionné. - 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.