Les changements pris en compte (consignés en zone `staged`) forment une nouvelle version notée ici `0`.
Les changements pris en compte (consignés en zone `staged`) forment une nouvelle version notée ici `0`.
A l'historique sont associés 2 pointeurs :
-`Master`, qui désigne le dernier commit (la version la plus récente) de la branche (il se déplace d'un cran vers la droite à chaque commit, et est forcément toujours à droite)
-`HEAD`, qui désigne le commit sur lequel est basé la reconstruction du _Working Tree_
-`HEAD`, qui désigne le commit sur lequel est basé la reconstruction du _Working Tree_
* :eyes: il suit généralement le pointeur `Master` mais il est possible de le déplacer explicitement sur n'importe quelle version antérieure pour reconstituer l'état du _Working Tree_ dans cette version
L'exécution de la commande `git status` montre que l'état du `Working Tree` est en phase avec la version `HEAD` (_clean_).
...
...
@@ -305,7 +305,7 @@ MacBook-Air-749:4git sebastienjean$ git commit -a -m "modification du fichier"
MacBook-Air-749:4git sebastienjean$
```
> :eyes: ici, le fichier est déjà connu.
> :eyes: ici, le fichier est déjà connu.
> :information_source:️ L'option `-a` permet d'éviter l'appel à `git add` et inclut à la nouvelle version **l'intégralité** du contenu de la zone _unstaged_.
...
...
@@ -344,7 +344,7 @@ index ee051bd..53c5f7f 100644
MacBook-Air-749:4git sebastienjean$
```
-`HEAD` Vs `HEAD\~1` (la version parente de `HEAD`) :
-`HEAD` Vs `HEAD~1` (la version parente de `HEAD`) :
```diff
MacBook-Air-749:4git sebastienjean$ git diff HEAD~1 HEAD unFichier.txt
> :information_source:️ On peut aussi utiliser en paramètre les _hash_ des commits (abbréviés ou non) mais il est parfois plus simple de se répérer par rapport à `HEAD` (`\~1` pour le commit parent, `\~2` pour le commit grand-parent, ...) ou même par rapport à `Master` (de la même manière).
> :information_source:️ On peut aussi utiliser en paramètre les _hash_ des commits (abbréviés ou non) mais il est parfois plus simple de se répérer par rapport à `HEAD` (`~1` pour le commit parent, `~2` pour le commit grand-parent, ...) ou même par rapport à `Master` (de la même manière).