TP Gestion de version - Git - GitLab

Le but de ce TP est de prendre en main l’outils de gestion de version GitLab de l’université.

Le travail est réalisé en équipes de deux personnes. le but est de travailler en parallèle sur deux postes différents, le partage du code se faisant grâce à Git et à la plateforme GitLab.

Avant de commencer : configuration de GitLab

Le GitLab de l’université est hébergé ici : https://www-apps.univ-lehavre.fr/forge/

Lors de la première connexion, on utilise le système d’authentification de l’université en cliquant sur le bouton : “CAS Université du Havre”.

Une fois connecté il faut donner une adresse mail valide (une que vous utilisez, pas forcement celle de l’université). Un mail de confirmation sera envoyé à l’adresse donnée.

Une fois l’adresse mail validée, aller dans l’onglet password afin de définir un mot de passe (différent de celui de l’université).

Dans un terminal on configure le client Git local avec les commandes de configuration suivantes (remplacer les mots LOGIN, PRENOM, NOM et EMAIL par ce qui convient) :

git config --global credential.https://www-apps.univ-lehavre.fr.username LOGIN
git config --global user.name "PRENOM NOM"
git config --global user.email "EMAIL"

Pour ne pas retaper à chaque fois le mot de passe. Sous Linux taper :

git config --global credential.helper 'cache --timeout 3600'

GitLab est maintenant configuré. Plus besoin d’utiliser le “CAS de L’université” pour se connecter à l’avenir, on peut directement entrer le login (ou l’adresse email) et le mot de passe définit précédemment, sur la page de connexion.

But et fonctionnement du TP.

Le but est les manipulation de GIT et le travail en équipe. Le travail s’effectue par équipe de deux personnes (deux postes séparés).

Se mettre d’accord avec un collègue pour travailler en binôme.

Dans la suite le binôme dont le nom est premier dans l’ordre lexicographique est appelé Alice. L’autre binôme est Bob.

La section “travail demandé” va décrire les tâches à remplir dans ce projet. Chaque tâche ou groupe de tâche est attribué soit à Alice, soit à Bob. Alice doit faire les tâches qui la concerne uniquement, de même pour Bob.

On essaye de travailler en parallèle quand cela est possible.

Le projet

On veut réaliser un simple modèle objet en Java qui permet de gérer un carnet d’adresses.

Un carnet d’adresses est constitué d’entrées qui peuvent représenter des personnes ou des sociétés. Les informations et la présentation sont différentes s’il s’agis d’une personne ou d’une société.

Une méthode utilitaire permet de lire les contacts à partir d’un fichier texte.

On peut faire des recherches sur le carnet et sélectionner des contacts pour les afficher.

L’affichage se fait en choisissant l’ordre lexicographique (croissant ou décroissant), le sens d’affichage (nom ou prénom) et le mode présentation (abrégé, simple ou complet).

En plus des méthodes indiquées, toutes les classes possèdent des accesseurs pour leurs champs privés. Le modèle objet est le suivant.

UML Carnet d'adresses

Travail Demandé

1. Alice

2. Bob

3. Alice

4. Bob

5. Alice

6. Bob

7. Alice

8. Bob

9. Alice ou Bob

10. Bob

11. Alice

12. Bob

13. Alice

14. Alice ou Bob

15. Bob