Gérez du code avec Git et Github Flashcards
Qu’est qu’un gestionnaire de versions ?
Un gestionnaire de versions est un programme qui permet aux développeurs de conserver un historique des modifications et des versions de tous leurs fichiers.
Quelle est l’avantage d’utiliser un gestionnaire des versions si vous travaillez seul ?
Si vous travaillez seul, vous pourrez garder l’historique de vos modifications ou revenir à une version précédente facilement.
Quelle est l’avantage d’utiliser un gestionnaire des versions si vous travaillez en équipe ?
Si vous travaillez en équipe, plus besoin de mener votre enquête ! Le gestionnaire de versions fusionne les modifications des personnes qui travaillent simultanément sur un même fichier. Grâce à ça, vous ne risquez plus de voir votre travail supprimé par erreur !
Quelles sont les grandes fonctionnalités d’un gestionnaire de fichiers ?
- Revenir à une version précédente de votre code en cas de problème.
- Suivre l’évolution de votre code étape par étape.
- Travailler à plusieurs sans risquer de supprimer les modifications des autres collaborateurs.
A quoi sert l’onglet Pull requests de GitHub ?
L’onglet Pull requests, quant à lui, permet de réaliser des demandes de pull. Les demandes de pull, ou extractions, vous permettent d’informer les autres des modifications que vous avez appliquées à une branche d’un repository sur GitHub.
A quoi sert la fonctionnalité Explore ?
Via Explore, vous pourrez trouver de nouveaux projets open source sur lesquels travailler, en parcourant les projets recommandés, en vous connectant à la communauté GitHub et en recherchant des repositories par sujet ou par libellé.
A quoi sert un fichier readme ?
“readme” est un fichier qui indique les informations clés de votre projet : description, environnement à utiliser, dépendances possibles et droits d’auteurs.
A quoi sert un fichier .gitignore ?
“gitignore” est un fichier qui permet d’ignorer certains fichiers de votre projet Git. Nous reviendrons là-dessus plus tard.
Comment configurer son identité sur Git ?
$ git config –global user.name “John Doe”
$ git config –global user.email johndoe@example.com
Comment configurer les couleurs ?
$ git config –global color.diff auto
$ git config –global color.status auto
$ git config –global color.branch auto
Comment initialiser Git ?
$ git init
Qu’est ce que le Working directory ?
Le Working directory
Cette zone correspond au dossier du projet sur votre ordinateur.
Souvenez-vous, dans la partie précédente nous avons initialisé le dépôt “PremierProjet”. Eh bien ce dépôt, c’est la zone bleue du schéma.
A quoi sert le “Stage” ou l’index ?
Le Stage ou index
Cette zone est un intermédiaire entre le working directory et le repository. Elle représente tous les fichiers modifiés que vous souhaitez voir apparaître dans votre prochaine version de code.
A quoi sert le Repository ?
Le Repository
Lorsque l’on crée de nouvelles versions d’un projet (vous vous souvenez, les 3 versions différentes du gâteau ?), c’est dans cette zone qu’elles sont stockées.
Ces 3 zones sont donc présentes dans votre ordinateur, en local.
En-dessous, vous trouvez le repository GitHub, c’est-à-dire votre dépôt distant.
Illuster à l’aide d’un schéma le 3 zones qui forment un dépöt local, et du dépôt distant GitHub.

A quoi sert la commande “git add” ?
La commande git add place les fichiers dans le “Stage ou index” c’est à dire qu’on donne un suivi à ces fichiers. A chaque modification qu’on estime important on fait un git add.
Exemple: $ git add index.html
$ git add styles.css
A quoi sert la commande “git commit” ?
La commande “git commit”sert à garder un fichier qu’on a indexé avec “git add”. La commande “git commit” est souvent accompagnée du paramètre -m qui permet de décrire les changements efectués pendant ce commit.
Exemple: git commit -m “Ajout des fichiers html et css de base”
Conseille: A chaque fois que tu fais “git add” d’un fichier modifié faut faire “git commit -m “description de la modification”” comme ça tu garde toutes les versions d’un fichier.
Comment relier le dépot local au dépot distant et envoyer nos documents?
Nous connectons les repositories. Le lien se trouve sur github:
git remote add origin https://github.com/EtudiantOC/OpenclassroomsProject.git
On fait un git branch avec la branche master devenu main sur github:
git branch -M main
Puis enfin on envoie nos documents:
git push -u origin main
Après avoir lié le depôt local et distant et avoir envoyé une première version de notre projet. Citez les eétapes pour envoyer un fichier modifié vers le depôt distant.
git add index.html
git commit -m “Modification du titre H1”
git push origin main
Citer les 4 étapes pour récuperer un projet existant de GitHub.
“git init”
“git remote add nomProjet urlProjet” “git remote add OC https://github.com/OpenClassrooms-Student-Center/ProjetOpenSource.git”
git branch -M nomBranche sur laquelle vous voulez importer votre projet
“git branch -M main ou git checkout nomBranch”
“git pull nomProjet nomBrancheMaster” “git pull OC main”
Quelle commande pour savoir sur quelle branche tu te trouves ?
“git branch”
Exemple:
git branch
* main
cagnotte
L’étoile marque la branche sur laquelle on se trouve.
Comment créer une nouvelle branche ?
git branch nomBranche
Exemple:
git branch cagnotte
Avec quelle commande change-t-on de branche ?
git checkout nomBranche
Exemple:
git checkout cagnotte
Comment fusionnez deux branches ?
D’abord il faut se placer sur la branche dans laquelle nous voulons que les fichiers modifiés soient deversés. Puis :
git merge nomBrancheSecondaire
Exemple:
git checkout main
git merge cagnotte
Quelle commande pour supprimer une branche ?
git branch -d nomBranche
Exemple:
git branch -d brancheTest
Comment faire si on a fait un git add d’un fichier mais quand on l’a fait sur la mauvaise branche ?
Vous faites d’abord “git status” pour vérifier le document mis en stage.
Puis vous faites “git stash”
Après vous faites “git status” pour bien vérifier qu’il n’y a plus aucun fichier en stage.
Changez à la branche où vous vouliez faire le “git add” avec “git checkout brancheCommit”
Et enfin vous appliquez la remise pour récupérer le “git add” avec la commande “git stash apply”
Comment faire si on a fait plusieurs git add des fichiers mais quand on l’a fait sur la mauvaise branche ?
Vous faites d’abord “git status” pour vérifier les documents mis en stage.
Puis vous faites “git stash”
Après vous faites “git status” pour bien vérifier qu’il n’y a plus aucun fichier en stage.
Changez à la branche où vous vouliez faire le “git add” avec “git checkout brancheCommit”
Puis vous appliquez la remise pour récupérer le “git add” avec la commande “git stash list”
Comment faire si on fait un commit sur la mauvaise branche ?
Vous devez d’abord vérifier vos commits avec: “git log commit” Exemple: $ git log commit ca83a6dff817ec66f443420071545390a954664949 Author: Marc Date: Mon Mar 19 21:52:11 2019 -0700
Puis vous devez effacer le dernier commit de la branche master avec :”git reset –hard HEAD^”
Changez à la branche voulu avec: “git checkout brancheCommit”
Finalement récuperez le git commit sur la branche voulue avec: “git reset –hard ca83a6df” Vous avez besoin que des 8 premiers caractères de la clé
Comment changer le message du dernier commit ?
git commit –amend -m “Votre nouveau message de commit”
Puis on vérifie avec “git log”
Comment faire si on a fait un commit mais que nous avons oublié un fichier ?
git add FichierOublie.txt git commit –amend –no-edit
Comment annuler un commit public (un commit fait sur un dépot distant) ou un commit privé ?
git revert HEAD^
A quoi sert la commande “git reset –soft”?
Cette commande permet de se placer sur un commit spécifique afin de voir le code à un instant donné, ou de créer une branche partant d’un ancien commit. Elle ne supprime aucun fichier, aucun commit, et ne crée pas de HEAD détaché.
A quoi sert la commande “git reset –mixed”?
Le git reset –mixed va permettre de revenir juste après votre dernier commit ou le commit spécifié, sans supprimer vos modifications en cours. Il permet aussi, dans le cas de fichiers indexés mais pas encore commités, de désindexer les fichiers.
A quoi sert la commande “git reset –hard”?
Cette commande permet de revenir à n’importe quel commit mais en oubliant absolument tout ce qu’il s’est passé après ! Quand je dis tout, c’est TOUT ! Que vous ayez fait des modifications après ou d’autres commits, tout sera effacé ! C’est pourquoi il est extrêmement important de revérifier plusieurs fois avant de la lancer, vous pourriez perdre toutes vos modifications si elle est mal faite.
Quelle est la différence entre “git reset et git revert” ?
“git reset” va revenir à l’état précédent sans créer un nouveau commit, alors que “git revert” va créer un nouveau commit.
Comment copier un commit spécifique d’une branche à une autre ?
Aller sur la branche dont on veut récupérer le commit.
“git checkout nomBranche”
Regarder l’historique des commits avec et copier les 8 premiers caractères de l’identifiant du commit :
“git log”
Puis basculmer sur la branche master avec : git checkout master
Et enfin faire un: “git cherry-pick identifiantCommit”
Vérifier le résultat avec: “git log”
A quoi sert la commande “git log”?
Par défaut, git log énumère en ordre chronologique inversé les commits réalisés. Cela signifie que les commits les plus récents apparaissent en premier. Cette commande affiche chaque commit avec son identifiant SHA, l’auteur du commit, la date et le message du commit.
C’est quoi un SHA ?
Un SHA est un identifiant pour les commits et autres actions gardés en mémoire par Git.
A quoi sert la commande git reflog ?
“git reflog” va loguer les commits ainsi que toutes les autres actions que vous avez pu faire en local : vos modifications de messages, vos merges, vos resets, enfin tout, quoi
A sert la commande git blame fichier.txt ?
git blame permet d’examiner le contenu d’un fichier ligne par ligne et de déterminer la date à laquelle chaque ligne a été modifiée, et le nom de l’auteur des modifications .