Git
Git
Le modèle de données d'abord, les commandes ensuite.
La plupart des gens apprennent Git par une liste de commandes à réciter, et restent bloqués au premier imprévu — parce qu'ils n'ont aucun modèle mental pour raisonner sur ce qui vient de se passer.
Ce cours prend l'autre chemin : comprendre ce que Git stocke et ce qu'une commande déplace. Les commandes deviennent alors des conséquences, et une situation inconnue reste analysable.
Le parcours
Comprendre
- Le modèle de données — objets, empreintes, instantanés : pourquoi Git ne stocke pas des différences.
- Les trois zones — répertoire de travail, index, dépôt, et ce qui fait passer de l'une à l'autre.
Diverger et converger
- Les branches — un pointeur de 41 octets, et
HEADqui dit où l'on est. - Fusionner — avance rapide, commit de fusion, conflits et leur résolution.
Travailler à plusieurs
- Les dépôts distants —
fetchcontrepull, branches de suivi, demandes de fusion.
Maîtriser
- Réécrire l'histoire —
amend,rebase, rebase interactif, et la règle d'or. - Réparer —
reflog, les troisreset,revert,restore,stash: presque rien n'est perdu. - Hygiène d'un dépôt — fichiers ignorés, secrets, gros fichiers, étiquettes de version.
Opérer
- Git dans une chaîne CI/CD — clone superficiel, diff sélectif, SHA comme étiquette d'artefact.
- Contrôles automatiques et signature — crochets, détection de secrets, commits signés.
- Collaborer sur une forge — stratégies d'intégration, branches protégées, CODEOWNERS.
- Diagnostiquer avec Git —
bisect, la pioche,cherry-pick, submodules.