... | ... | @@ -285,4 +285,77 @@ index 927b61b..ee051bd 100644 |
|
|
MacBook-Air-749:4git sebastienjean$
|
|
|
```
|
|
|
|
|
|
Pour chaque changement sur un fichier, une description des changements à la syntaxe _diff_ est produite. Elle fusionne les 2 versions du fichier et note les endroits des changements. L'outil _diff_ ne travaille qu'au niveau d'un ligne (pas au niveau de son contenu), ainsi une modification sur une ligne à l'endroit désigné du fichier est vue comme la suppression (`-`) de la ligne et l'ajout (`+`) d'une autre ligne (cf. documentation pour plus de détails) |
|
|
\ No newline at end of file |
|
|
Pour chaque changement sur un fichier, une description des changements à la syntaxe _diff_ est produite. Elle fusionne les 2 versions du fichier et note les endroits des changements. L'outil _diff_ ne travaille qu'au niveau d'un ligne (pas au niveau de son contenu), ainsi une modification sur une ligne à l'endroit désigné du fichier est vue comme la suppression (`-`) de la ligne et l'ajout (`+`) d'une autre ligne (cf. documentation pour plus de détails)
|
|
|
|
|
|
On suppose que l'on valide ces modifications :
|
|
|
|
|
|
```
|
|
|
MacBook-Air-749:4git sebastienjean$ git commit -a -m "modification du fichier"
|
|
|
[master e08fe66] modification du fichier
|
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
MacBook-Air-749:4git sebastienjean$
|
|
|
```
|
|
|
|
|
|
__N.B.__ : ici, l'e fichier est déjà connu.'option `-a` permet d'éviter l'appel à `git add` et inclus à la nouvelle version l'intégralité du contenu de la zone _unstaged_.
|
|
|
|
|
|
Il y a donc maintenant 2 versions :
|
|
|
|
|
|
```
|
|
|
MacBook-Air-749:4git sebastienjean$ git log --pretty="format:%h %s"
|
|
|
e08fe66 modification du fichier
|
|
|
146f51a ajout d'un fichier
|
|
|
MacBook-Air-749:4git sebastienjean$
|
|
|
```
|
|
|
|
|
|
On considère que l'on édite de nouveau le contenu du fichier précédent en modifiant le texte sur la première ligne pour produire le résultat suivant :
|
|
|
|
|
|
```
|
|
|
MacBook-Air-749:4git sebastienjean$ more unFichier.txt
|
|
|
Encore une autre ligne de texte
|
|
|
MacBook-Air-749:4git sebastienjean$
|
|
|
```
|
|
|
|
|
|
Il est alors possible, avec `git diff`, de comparer le contenu du fichier à différentes versions :
|
|
|
|
|
|
- _working tree_ Vs `HEAD` :
|
|
|
```diff
|
|
|
MacBook-Air-749:4git sebastienjean$ git diff unFichier.txt
|
|
|
diff --git a/unFichier.txt b/unFichier.txt
|
|
|
index ee051bd..53c5f7f 100644
|
|
|
--- a/unFichier.txt
|
|
|
+++ b/unFichier.txt
|
|
|
@@ -1 +1 @@
|
|
|
-Une autre ligne de texte
|
|
|
+Encore une autre ligne de texte
|
|
|
MacBook-Air-749:4git sebastienjean$
|
|
|
```
|
|
|
- `HEAD` Vs `HEAD~1` (la version parente de `HEAD`) :
|
|
|
```diff
|
|
|
MacBook-Air-749:4git sebastienjean$ git diff HEAD~1 HEAD unFichier.txt
|
|
|
diff --git a/unFichier.txt b/unFichier.txt
|
|
|
index 927b61b..ee051bd 100644
|
|
|
--- a/unFichier.txt
|
|
|
+++ b/unFichier.txt
|
|
|
@@ -1 +1 @@
|
|
|
-Une ligne de texte
|
|
|
+Une autre ligne de texte
|
|
|
```
|
|
|
|
|
|
- _working tree_ Vs `HEAD~1` :
|
|
|
```diff
|
|
|
MacBook-Air-749:4git sebastienjean$ git diff HEAD~1 unFichier.txt
|
|
|
diff --git a/unFichier.txt b/unFichier.txt
|
|
|
index 927b61b..53c5f7f 100644
|
|
|
--- a/unFichier.txt
|
|
|
+++ b/unFichier.txt
|
|
|
@@ -1 +1 @@
|
|
|
-Une ligne de texte
|
|
|
+Encore une autre ligne de texte
|
|
|
```
|
|
|
|
|
|
__N.B.__ : On peut aussi utiliser les _hash_ (abbréviés ou non) des commits 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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|