La Pull Request
Notions théoriques
Git est un outil fantastique pour le travail en équipe. Il permet à plusieurs personnes de travailler simultanément sur un même projet sans se marcher sur les pieds. Pour cela, Git utilise une fonctionnalité appelée "Pull Request".
Une Pull Request (ou PR) est une proposition de modification sur un projet hébergé sur GitHub. C'est un moyen pour un contributeur de dire : "Hey, j'ai fait des modifications sur ce projet, pouvez-vous les examiner et les ajouter au projet principal ?".
Une Pull Request est une manière de soumettre vos modifications à l'avis des autres.
C'est un processus qui favorise la collaboration et garantit que vos modifications sont valides avant de les intégrer au projet.
Pour créer une Pull Request :
- vous devez d'abord forker le dépôt, c'est-à-dire créer une copie personnelle du dépôt sur votre compte GitHub.
- Ensuite, vous faites vos modifications sur votre copie,
- et lorsque vous êtes prêt, vous pouvez demander à ce que vos modifications soient intégrées au dépôt original en créant une Pull Request.
Test de mémorisation/compréhension
TP "sans conflit"
Dans ce TP, vous allez forker le dépôt https://github.com/MonVoisinDeTable/tp_git
sur GitHub, cloner ce dépôt sur votre machine locale, faire des modifications, les pousser sur votre dépôt distant et finalement créer une Pull Request.
-
Rendez-vous sur le dépôt
https://github.com/MonVoisinDeTable/tp_git
. -
Cliquez sur le bouton "Fork" en haut à droite de la page.
-
Une fois que vous avez forké le dépôt, clonez-le sur votre machine locale avec la commande
git clone
. -
Faites une modification dans le fichier
styles.css
, en changeant la couleur d'arrière-plan en jaune :body {
background-color: yellow;
} -
Ajoutez cette modification à l'index et commitez-la dans le dépôt avec la commande
git commit
. -
Envoyez vos modifications sur le serveur distant avec la commande
git push
. -
Sur GitHub, naviguez jusqu'à votre dépôt et cliquez sur "New pull request".
-
Sélectionnez la branche contenant vos modifications, puis cliquez sur "Create pull request".
Une solution
Vous devez être connecté pour voir le contenu.
Comment l'étudiant VoisinDeTable peut accepter le Pull Request
-
Connectez-vous à votre compte GitHub et accédez au dépôt
tp_git
. -
Cliquez sur l'onglet "Pull requests" situé en haut de la page. Vous y verrez une liste de toutes les Pull Requests ouvertes pour ce dépôt.
-
Cliquez sur la Pull Request que vous souhaitez examiner. Vous serez redirigé vers une page montrant les détails de la Pull Request, y compris le message de commit, les fichiers modifiés et les modifications spécifiques apportées à chaque fichier.
-
Pour accepter la Pull Request, cliquez sur le bouton "Merge pull request". Cela fusionnera les modifications proposées dans la branche principale de votre dépôt.
-
Vous pouvez également laisser un commentaire pour l'auteur de la Pull Request, par exemple pour le remercier ou pour lui donner un feedback sur ses modifications.
-
Une fois que vous avez accepté la Pull Request, les modifications proposées seront intégrées à votre projet et la Pull Request sera fermée. Vous pouvez toujours la retrouver dans l'onglet "Closed" de la page "Pull requests".
Notez que vous pouvez :
-
refuser une Pull Request si vous pensez que les modifications proposées ne sont pas appropriées pour votre projet.
Pour cela, il suffit de cliquer sur le bouton "Close pull request".
-
demander des modifications supplémentaires avant d'accepter la Pull Request, en laissant un commentaire pour l'auteur.
TP "avec conflit"
Dans ce TP, vous allez expérimenter une situation de conflit et apprendre comment le résoudre.
Pour ce faire, nous allons utiliser le même dépôt
https://github.com/MonVoisinDeTable/tp_git
sur GitHub.
Vous allez modifier le même fichier dans deux branches différentes, ce qui va générer un conflit lors de la fusion.
-
Si ce n'est pas déjà fait, rendez-vous sur le dépôt
https://github.com/MonVoisinDeTable/tp_git
. -
Clonez ce dépôt sur votre machine locale avec la commande
git clone
. -
Créez une nouvelle branche avec la commande
git checkout -b
. -
Faites une modification dans le fichier
styles.css
, par exemple en changeant la couleur d'arrière-plan de votre site. -
Ajoutez cette modification à l'index et commitez-la dans le dépôt avec la commande
git commit
. -
Revenez à la branche principale avec la commande
git checkout
. -
Faites une autre modification dans le même fichier
styles.css
, mais cette fois en changeant la couleur du texte en rouge :body {
color: red;
} -
Ajoutez cette modification à l'index et commitez-la dans le dépôt avec la commande
git commit
. -
Essayez de fusionner votre nouvelle branche dans la branche principale avec la commande
git merge
. Vous devriez voir un message indiquant qu'il y a un conflit. -
Ouvrez le fichier
styles.css
et résolvez le conflit en choisissant quelles modifications garder. -
Une fois le conflit résolu, ajoutez le fichier à l'index et commitez le changement.
-
Envoyez vos modifications sur le serveur distant avec la commande
git push
.
Une solution
Vous devez être connecté pour voir le contenu.