Ecole Supérieure Privée Technologies & Ingénierie
Type d’épreuve : DS Examen session principale
Enseignantes : L. BOUSBIAA, M. CHERIF, S. JALEL, I. BEN MANSOUR
Matière : Gestion de versions décentralisée
Année Universitaire : 2023-2024 Semestre : 2
Classe : TIC
Documents : Autorisés Non autorisés
Date : 04/06/2024 Durée : 1h30mn
Nombre de pages : 2
Barème : 3 pts + 7 pts + 10 pts
Exercice 1 (3 pts) :
1. Quelle commande Git utilise-t-on pour transférer les modifications de votre dépôt
local vers le dépôt distant ? (0.5 pt)
2. Quelle commande peut-on utiliser pour annuler définitivement un commit ? (0.5 pt)
3. Quelle est la commande utilisée pour afficher tous les paramètres dans git ? (0.5 pt)
4. Quelle est la commande utilisée pour vérifier l’état de votre référentiel local depuis
votre dernier commit ? (0.5 pt)
5. Après l'installation de Git, quels paramètres sont exigés pour réaliser un premier
commit ? (0.5 pt)
6. Quelle commande permet de forcer la suppression d’une branche qui n’a pas été
fusionnée ? (0.5 pt)
Exercice 2 (7 pts) :
1. Citez brièvement la différence entre Git et GitHub ? (1pt)
2. Expliquez la différence entre git reset--soft et git reset --hard. (1 pt)
3. Expliquez ce que fait la commande git revert. (0.5 pt)
4. Supposant que vous avez supprimé définitivement, par erreur, les deux derniers
commits de l’historique de votre projet. Comment faire pour les récupérer ? (1.5 pts)
5. Imaginez que vous vous rendez compte qu’il y a un bug quand vous venez d’envoyer vos
modifications au repository distant. La figure ci-dessous présente l’historique de votre
projet. Quelle commande devez-vous exécuter pour annuler vos modifications ? Justifiez
votre réponse (1.5 pts)
1
6. Supposons que vous avez continué à développer votre projet en local. Suite au dernier
commit, vous vous rendez compte que ce dernier, n’aurait pas dû avoir lieu. Quelle
commande utiliser pour sauver la situation ? Justifiez votre réponse. (1.5 pts)
Exercice 3 : (10 pts)
Donnez les commandes nécessaires pour :
1. Créer un nouveau répertoire « examenGit » et se positionner sous ce dernier. (0.5 pt)
2. Créer et configurer un fichier .gitignore pour ignorer tous les fichiers word (ayant
l’extension .docx). (1.5 pts)
3. Tester pour valider la fonctionnalité de votre fichier .gitignore en ajoutant un fichier
nom_prénom.docx (1 pt)
4. Créer une branche appelée « exam_branch » et se positionner sous cette branche. (0.5
pt)
5. Créer un nouveau fichier « index.html » et y ajouter le contenu suivant « < !-- premier
commentaire -- > ». Ajoutez et commitez ces modifications. (0.5 pt)
6. Retourner sur la branche « master » (0.5 pt)
7. Créer un fichier ayant le même nom « index.html » et y ajouter le contenu suivant « < !--
page principale -- > ». Validez cet ajout. (0.5 pt)
8. Fusionner la branche exam_branch dans la branche master. (0.5 pt)
9. Positionnez-vous sur la branche exam_branch et faites de nouveaux ajouts dans le fichier
index.hml puis validez. (1 pt)
10. Ajoutez un nouveau fichier file.css puis validez cet ajout. (0.5 pt)
11. Retournez à la branche principale, faites un merge de telle sorte qu’une seule ligne sera
ajoutée à l’historique de la branche destination. (1 pt)
12. Pour uploader la branche master dans le serveur distant, git vient d’afficher ce message.
Identifiez le problème rencontré. Faites le nécessaire et terminez l’envoie de votre travail.
(2 pts)