Seb-Info

TP Git

TP Git

TP – Projet DCSPompiers (Travail en groupe)

Objectif : collaborer en équipe sur un projet PHP existant en appliquant les bonnes pratiques de Git, GitHub, PSR12, et documentation de code.

Dépôt de référence : https://github.com/SebInfo/DCSPompiers

Organisation GitHub du travail

Revoir le cours partie 4/4 de Git

  1. Un seul étudiant par groupe fork le dépôt du professeur (branche main).
  2. Il ajoute ses camarades comme collaborateurs sur le fork (Settings → Collaborators → Add people).
  3. Chaque membre clone le fork du groupe sur sa machine via VS Code :
    git clone https://github.com/<nom-du-groupe>/DCSPompiers.git
  4. Chaque membre travaille sur une branche personnelle (ex. feature-affectation, bugfix-photo, sinistre-engins).
  5. Les branches sont fusionnées par pull request interne dans le fork du groupe, après relecture.

Remarque : ne travaillez jamais directement sur main.

Travail par groupe

Groupe A – Gestion des Pompiers

  • CRUD complet sur Pompier et modification d’une affectation (tout en conservant l’historique).
  • Appliquer intégralement la norme PSR12.
  • Compléter la documentation de code (DocComment PHP).
  • Réusinage du code si nécessaire (amélioration structurelle sans changer la logique fonctionnelle).
  • Bonus : ajouter une photo facultative pour chaque pompier (modification de la BDD incluse).

Groupe B – Gestion des Véhicules

  • Corriger le bogue lors de la modification d’un véhicule : si aucune nouvelle photo n’est choisie, l’ancienne ne doit pas être supprimée.
  • Mettre en place un vrai CRUD sur les Véhicules (et non sur les types de véhicules). Relire le cahier des charges et adapter le code.
  • Appliquer intégralement la norme PSR12.
  • Compléter la documentation DocComment.
  • Réusinage du code si vous le jugez nécessaire.

Groupe C – Gestion des Sinistres (Interventions)

  • Déterminer, à partir de la nature d’un sinistre, les types d’engins nécessaires en exploitant l’association prévoir entre Nature.Sin et Type Engin.
  • Identifier les habilitations requises pour chaque type d’engin (et compléter le modèle si besoin).
  • Appliquer la norme PSR12.
  • Compléter la documentation DocComment.

Livrables attendus

    • Fork GitHub propre, bien nommé (ex. DCSPompiers-GroupeA).
    • Pull Requests internes entre les membres du groupe :
      • Au moins une PR par fonctionnalité ou correction.
      • Discussion / relecture du code dans la PR (commentaires, validation).
      • Fusion propre dans la branche main du fork.
      • README.md complété :
      • Pull Request finale vers mon dépôt SebInfo  :
        • Chaque groupe crée une PR unique depuis son fork (main) vers le dépôt original (main du professeur).
        • Le titre de la PR doit indiquer clairement le groupe et le thème (ex. “PR finale – Groupe B – Gestion des Véhicules”).
        • La description doit résumer le travail accompli et mentionner les membres du groupe.
      • README.md
        • Conserver intégralement le contenu déjà présent.
        • Ajouter à la fin une section spécifique au groupe, intitulée :
          ## Groupe X – <Thème>.
        • Indiquer :
          • les membres du groupe et leur rôle,
          • les fonctionnalités réalisées,
          • les corrections apportées,
          • les difficultés rencontrées et les pistes d’amélioration.
 

Ce contenu est réservé aux membres du site. Si vous êtes un utilisateur existant, veuillez vous connecter. Les nouveaux utilisateurs peuvent s'inscrire ci-dessous.

Connexion pour les utilisateurs enregistrés
   
Nouvel utilisateur ?
*Champ requis
Powered by WP-Members