Entrainement Git / GitHub
En équipe de 2 développeurs, suivez les consignes en choisissant chacun votre rôle !
Colonne de gauche, Tic et colonne de droite Tac.
Cet atelier te permettra de découvrir comment collaborer avec Git et GitHub, gérer les conflits de fichiers et versionner ton code.
TIC
TAC
Crée un nouveau répertoire de travail vide nommé wild-project sur ton poste de travail.
Crée un nouveau dépôt public vide sur GitHub appelé wild-project sur ton profil. (Pas de génération de README.md !!)
Suivre les commandes “…or create a new repository on the command line” affichées sur GitHub depuis un nouveau dossier wild-project situé en local, sur ton poste.
Attention à bien choisir l'option SSH et non HTTPS.
Aide Tac à cloner le dépôt et comprendre ensemble comment faire après lui avoir donné le lien vers le dépôt.
Attention, bien utiliser :
git clone url_du_dépôt nouveau_nom_de_dossier
Ouvrir le repertoire du projet dans l’éditeur de code
Modifier le readme en y mettant :
# wild-project
Comment installer ce projet ?
Il suffit, pour le moment, de le cloner.
Créer le fichier “another_file.html” dans le repertoire de projet.
Mettre un commentaire <!-- type your comment here -->.
not_same_file.html dans le repertoire de projet.Y mettre un commentaire, là peu importe, identique ou différent.
Regarder ce que fait Tac, comprendre avec lui chaque commande et leur résultat.
secret_file.htmlContenant :
// Mustn't be shared on GitHub because, here is my password I use for gmail, facebook, my laptop, and if I could, I would use the same as pin for my cell phone.
Exécuter : git statusIgnorer le fichier
secret_file.html en créant le fichier .gitignore et en le complétant comme il faut.
Exécuter : git status
git status, le fichier .gitignore doit apparaître.
git add .
git status
git commit -m "Change me"(mettre un message explicite de ce que vous avez fait, pas de limites, vous pouvez appuyer sur entrée tant que vous n’avez pas fermé les guillemets)
Tic commence en premier à mettre en ligne le commit (utiliser git push)
Tic n’a pas eu de problème
Tic étant proprietaire du dépôt, il doit donner les droits à Tac.
“Settings” > “Collaborators and team” et ajoute Tic en tant que collaborateur.
git push)
Tic en tant que “Ranger du risque” aide Tac
Trouver la solution sans chercher sur internet, juste avec le message dans la console.
(Si vraiment bloqué, appeler le formateur à l’aide ! )
Tac doit valider le message
Tac peut enfin mettre en ligne le commit
(
git push)
Vérifier la mise à jour sur GitHub - le fichier secret_file.html, est-il là ?
Tic fait un git pull pour récupérer les derniers changements effectués par Tac.
Ensuite, il créer une branche à partir de la branche actuelle.
git branch tic_branch
git switch tic_branch
ou directement
git switch -c tic_branch
tac_branch.
Créer le fichier same_file.html et y mettre un commentaire <!-- type your comment here --> dedans.
same_file.html et aussi y mettre un commentaire, mais ! pas le même que Tic
Exécuter : git status
git add .
git status
git commit -m "Change me" (mettre un message explicite de ce que vous avez fait, pas de limites, vous pouvez appuyer sur entrée tant que vous n’avez pas fermé les guillemets)
Tic publie sa branche sur GitHub (en utilisant git push origin tic_branch)
Tac publie également sa branche (en utilisant git push origin tac_branch)
Créer une pull request depuis GitHub de ta branche tic_branch vers main (attention à l’ordre d’affichage)
Vérifier que “able to merge” s’affiche
Ajoute à la description : “Explain what you modified and how to test it”.
Regarde ce que fait Tic, et fais la même chose avec ta branche (tac_branch vers main)
Observes ce que fait Tac et aide le si besoin.
Va sur GitHub et rends toi sur ta pull request
Vérifie que tout est bon, et clique sur le bouton “Merge pull request”.
🥳 Bravo ! Tu viens de merger ta première branche. Ton travail apparaît désormais sur main.
Suis les mêmes étapes que Tac précedemment pour valider ta pull request et pouvoir merger ta branche.
Oh zut, il y a un conflit. En effet, le message "This branch has conflicts that must be resolved" s'affiche.
Pour comprendre comment résoudre les conflits, regardez ensemble cette vidéo :
Plutôt que de résoudre les conflits comme dans la vidéo sur GitHub, fais le directement dans ton éditeur de code en local.
Sur GitHub clique sur "command line instructions" comme sur l'image et suis les instructions. N'oublie pas de faire des git status entre chaque étape et d'en discuter avec Tac.
Maintenant que tous les conflits sont réglés, retournes sur la pull request sur GitHub, vérifies que tout est ok et cliques sur le bouton "Merge pull request".
Vous avez réussi à résoudre ensemble un conflit de fusion dans une pull request, félicitations ! 🥳