Cours RechercherCtrl K

Fiches de révision

Fiches Git & GitHub

6 fiches, une par leçon, dans l'ordre du cours. Retour au cours Git & GitHub

Git & GitHub · Leçon 1

Pourquoi Git ?

À retenir

  • Git est un gestionnaire de versions : il garde l'historique complet d'un projet (qui, quoi, quand, pourquoi).
  • Git est un logiciel sur ton ordinateur (il marche hors ligne) ; GitHub est un site qui héberge des projets Git.
  • Une seule fois par ordinateur : git config --global user.name et user.email (ils signent tes commits).
  • git config sans valeur affiche, avec une valeur modifie ; git config --list montre tout.

Mémo

git --version
git config --global user.name "Léa Martin"
git config --global user.email "lea@exemple.fr"
git config --global init.defaultBranch main
git config --list

Pièges à éviter

  • Oublier les guillemets autour d'un nom qui contient un espace.
  • Utiliser un autre e-mail que celui de GitHub : les commits ne sont pas reliés au profil.

Revoir la leçon et ses exercices

Git & GitHub · Leçon 2

Tes premiers commits

À retenir

  • git init transforme un dossier en dépôt (l'historique est dans le dossier caché .git).
  • Trois zones : le dossier de travail, l'index (ce qui est préparé), l'historique (les commits).
  • git add prépare, git commit -m "message" enregistre ; git status dit où en est chaque fichier.
  • Un bon message dit ce que fait la modification : « Ajoute le formulaire de contact ».
  • .gitignore liste ce que Git doit ignorer (mots de passe, fichiers générés), à créer avant le premier commit.

Mémo

cd mon-site
git init
git status
echo ".env" > .gitignore
git add .
git commit -m "Première version"

# ensuite, à chaque étape
git add index.html
git commit -m "Ajoute le formulaire de contact"

Pièges à éviter

  • Faire git commit sans git add avant : rien n'est enregistré.
  • Committer un mot de passe : il reste dans l'historique même après suppression.
  • Des messages comme « modif » : illisibles six mois plus tard.

Revoir la leçon et ses exercices

Git & GitHub · Leçon 3

Historique et retour en arrière

À retenir

  • git log --oneline : l'historique, une ligne par commit, le plus récent en haut. Chaque commit a un identifiant (hash).
  • git diff : ce qui est modifié et pas préparé ; git diff --staged : ce qui est préparé ; git show id : un commit.
  • git restore fichier remet un fichier comme au dernier commit (le travail non enregistré est perdu).
  • git restore --staged fichier retire un fichier de l'index sans le modifier.
  • git revert id crée un commit qui fait l'inverse : on annule sans réécrire l'historique.

Mémo

git log --oneline
git diff
git diff --staged
git show 4c1d2e9

git restore index.html            # revenir au dernier commit
git restore --staged index.html   # retirer de l'index
git revert 4c1d2e9                # annuler un commit

Pièges à éviter

  • git reset --hard réécrit l'historique : à éviter, surtout sur un projet partagé.
  • Confondre git restore (perd les modifications) et git restore --staged (les garde).

Revoir la leçon et ses exercices

Git & GitHub · Leçon 4

Les branches

À retenir

  • Une branche est une ligne de développement parallèle : on y travaille sans risquer de casser main.
  • git switch -c nom crée une branche et s'y place ; git switch nom change de branche ; git branch les liste.
  • Pour fusionner : se placer sur la branche qui reçoit (git switch main) puis git merge nom.
  • git branch -d nom supprime une branche fusionnée.
  • Un conflit arrive quand la même ligne a changé des deux côtés : on choisit, on enlève les marqueurs <<<<<<< ======= >>>>>>>, puis git add et git commit.

Mémo

git switch -c contact
# … modifications, git add, git commit …
git switch main
git merge contact
git branch -d contact
git branch

Pièges à éviter

  • Fusionner depuis la mauvaise branche (git merge main depuis la branche de fonctionnalité).
  • Changer de branche avec des modifications non enregistrées : Git peut refuser.

Revoir la leçon et ses exercices

Git & GitHub · Leçon 5

Publier sur GitHub

À retenir

  • git remote add origin adresse relie le dépôt local au dépôt en ligne.
  • git push -u origin main envoie les commits (le -u retient le lien) ; git pull récupère ceux des autres.
  • git clone adresse copie un dépôt existant, avec tout son historique.
  • En équipe : une branche par modification, git push -u origin branche, puis une pull request sur GitHub.
  • Rythme : git pull en commençant, add / commit, git push à la fin d'une étape.

Mémo

git remote add origin https://github.com/moi/projet.git
git push -u origin main
git pull

git clone https://github.com/equipe/site.git
cd site
git switch -c correction
# … add, commit …
git push -u origin correction

Pièges à éviter

  • Taper son mot de passe GitHub dans le terminal : il faut un token ou une clé SSH.
  • Pousser directement sur main dans un projet d'équipe.
  • Oublier cd après un git clone.

Revoir la leçon et ses exercices

Git & GitHub · Défi final

Contribuer à un projet

À retenir

  • Le flux de travail en équipe : clone, branche, modification, add, commit, push de la branche, pull request.
  • On vérifie souvent avec git status.

Mémo

git clone https://github.com/equipe/site.git
cd site
git switch -c ma-correction
git status
git add fichier
git commit -m "Explique la modification"
git push -u origin ma-correction

Pièges à éviter

  • Travailler directement sur main.

Revoir la leçon et ses exercices