Ce challenge a pour but d'évaluer votre capacité à explorer, comprendre et analyser l'historique d'un projet GIT.
- Aucune interface graphique n'est autorisée, vous devez travailler exclusivement en ligne de commande (sauf pour le FORK depuis Github)
- L'utilisation d'outils d'intelligence artificielle est strictement interdite.
- Vous pouvez utiliser la documentation à l'adresse suivante: https://git-scm.com/book/fr/v2
- Objectif : comprendre l'évolution du code et reconstituer les décisions prises.
Le dépôt d'origine à utiliser est disponible à l'adresse suivante :
https://github.com/ETML-RRY/324_inspection_git.git- Faites un FORK du dépôt sur votre compte GitHub (Attention il faut copier toutes les branches donc il faut décocher la case "Copy the main branch only" sur l'interface de Github)
- Ajoutez votre enseignant comme collaborateur à votre dépôt forké.
- Vous trouverez une réplique de ces instructions dans le fichier README.md de votre dépôt.
- Répondez directement aux questions dans le fichier README.md qui est au format Markdown
- Pour chaque points, veuillez noter la ou les commandes
gitutilisées vous permettant de répondre à la question. - Pour chaque partie, effectuez au minimum un commit et un push lorsque vous avez complété les réponses de la partie correspondante.
Le format Markdown: https://www.markdownguide.org/basic-syntax/
- Combien de branches existent dans le dépôt ? Citez-les.
- Quels sont les tags disponibles ? A quoi correspondent-ils ?
- Quelle est la branche principale du projet ?
- Quel est le message du premier commit du projet ?
- Trouvez le commit où une clé API a été ajoutée par erreur. Quel est son identifiant (hash court) ?
- Quel commit a ensuite corrigé cette erreur ?
- Trouvez le commit où le titre de la page d'accueil a été corrigé.
- Quel est le message du commit qui a ajouté le fichier
CHANGELOG.mdet quelle commande avez-vous utilisé ?
- Quelles branches ont été fusionnées dans
main? - Quelle branche n'a pas été fusionnée ? Pourquoi, selon vous ?
- Quelle est la différence principale entre les fichiers
index.htmldans les versionsv0.1etv0.2et quelle commande permet de le voir rapidement ? - Que contient la branche
feature/login? - Dans quelle branche a été ajouté le code pour le mode sombre ?
- Quelle bonne pratique de sécurité est évoquée dans les commits du fichier
config.js?
- Pourquoi est-il important de taguer des versions dans un projet ?
- Que peut-on déduire du style de travail de l'équipe à partir de cet historique GIT ?
Bonne chance, et surtout... ne vous perdez pas dans le log ! 😉