Aller au contenu principal

Une branche / fonctionnalité

Une branche Git par fonctionnalité

Dans un projet de développement, il est essentiel de ne pas travailler directement sur la branche principale.

Créer une branche Git par fonctionnalité permet :

  • de ne pas casser l'application en production
  • de pouvoir tester et valider chaque fonctionnalité indépendamment
  • de faciliter le travail en équipe (chaque développeur a sa propre branche)

Principe

Une fonctionnalité = une branche

Exemples de fonctionnalités :

  • Afficher la question
  • Afficher les réponses
  • Afficher une image
  • Afficher la question suivante
  • Afficher une explication après chaque réponse
  • Ajouter un score en fin de quiz
  • Ajouter un écran de fin de quiz
  • etc

Exemple pratique

Étape 1 : Créer une nouvelle branche

git checkout -b nom-de-la-fonctionnalité

Exemple :

git checkout -b affichage-question
astuce

Utilisez des noms de branches clairs et en kebab-case

Le format kebab-case, c'est écrire avec des mots (en minuscules) séparés par des tirets.


Étape 2 : Travailler sur la fonctionnalité

  • Modifiez votre code
  • Testez localement
  • Commitez régulièrement :
git add .
git commit -m "Ajout de l'explication après chaque réponse"

Étape 3 : Revenir à la branche principale

git checkout main

Puis mettez-la à jour si besoin :

git pull

Étape 4 : Fusionner la branche

git merge affichage-question
astuce

Vous pouvez aussi faire cela via une pull request si vous utilisez GitHub, GitLab ou Bitbucket.

Étape 5 : Supprimer la branche

Une fois fusionnée, si vous n'avez plus besoin de la branche, vous pouvez la supprimer :

git branch -d affichage-question

Test de mémorisation/compréhension


Pourquoi est-il déconseillé de travailler directement sur la branche `main` ?


Quel est l'intérêt principal de créer une branche Git par fonctionnalité ?


Quelle commande permet de créer et de basculer sur une nouvelle branche ?


Quel nom de branche utilise le format 'kebab-case' ?


Que signifie l'expression 'kebab-case' utilisée dans le cours ?


Quelle commande permet de revenir à la branche principale après avoir travaillé sur une fonctionnalité ?


Quelle commande permet de fusionner une branche dans la branche principale ?


Quelle commande permet de supprimer une branche locale ?


Parmi les propositions suivantes, lesquelles sont des bonnes pratiques ?



À vous de jouer !

  1. Créez une branche pour ajouter une nouvelle fonctionnalité à votre application (ex : affichage-question).

    git checkout -b affichage-question
  2. La modification sera réalisée dans cette branche.

    astuce

    Le tutoriel suivant Afficher une question vous guidera pour implémenter cette fonctionnalité.

    Vous pourrez ensuite tester/valider votre fonctionnalité puis envoyer votre travail sur github.com.

A faire uniquement après le tutoriel Afficher une question
  1. Une fois que votre modification est terminée, pensez à commiter votre travail.

    Voici la commande pour ajouter les fichiers et créer un commit :

    git add .
    git commit -m "Ajout de l'affichage de la question"
  2. Puis, revenez sur main et fusionnez votre branche.

    Voici la commande pour revenir sur la branche main :

    git checkout main  

    Voici la commande pour fusionner la branche affichage-question dans la branche main :

    git merge affichage-question  
  3. Et enfin, pensez à enregistrer votre travail sur GitHub (c'est à dire mettre à jour le dépôt sur github.com).

    Voici la commande pour "pousser" la branche main :

    git push  

Bonnes pratiques à retenir

✔️ Ne jamais travailler directement sur main
✔️ Une branche = une fonctionnalité
✔️ Des noms de branches clairs et concis
✔️ Des commits réguliers et descriptifs
✔️ Fusionner après test et validation

Pour plus de détails sur l'utilisation de Git, consultez le tutoriel Git.