* vérifier qu'aucune fonction `liba_byebye()` existe (`git grep`)
* ajouter une fonction `liba_byebye()` à la liba, qui sera appelée à la fin de `app.c`
* visualiser les modifications (`git diff`)
...
...
@@ -64,17 +64,17 @@
**Notions** : revisions
#### On s'est trompé
### On s'est trompé
En fait, on préfère nommer `liba_goodbye` la fonction `liba_byebye`.
* remettre le dépôt à son état précédent juste avant le commit (`git reset HEAD^`)
* rechercher les occurrences de la fonction `liba_byebye()` et la renommer `liba_goodbye()`
* enregistrer les modifications (`git commit`)
#### Se rétracter
### Se rétracter
Finalement, on préfère abandonner la nouvelle feature.
* annuler le dernier commit (`git revert`)
#### Voyage dans le temps
### Voyage dans le temps
En plein milieu d'un développement, on souhaite aller vérifier du code dans une version antérieure.
* ajouter une fonction `libb_goodbye()` à la libb, qui sera appelée à la fin de `app.c`
* cacher les modifications (`git stash`)
...
...
@@ -86,7 +86,7 @@ En plein milieu d'un développement, on souhaite aller vérifier du code dans un
* étiqueter la version courante (`git tag -a`)
* vérifier que le tag a bien été pris en compte
#### Brancher
### Brancher
On commence une nouvelle feature, que l'on enregistrera finalement dans une nouvelle branche.
* visualiser les branches existantes (`git branch`)
* ajouter une fonction `liba_greetings()` à la liba, qui sera appelée dans `app.c`
...
...
@@ -99,7 +99,7 @@ On crée une nouvelle feature planifiée.
* ajouter une fonction `libb_happy()` à la libb
* enregistrer les modifications (`git commit`)
#### Fusionner
### Fusionner
* revenir sur la branche *greetings*, ajouter une fonction `libb_how_are_you()` à la libb
* enregistrer les modifications (`git commit`)
...
...
@@ -109,7 +109,7 @@ On fusionne la nouvelle feature avec la branche maîtresse.
* appliquer les modifications de la branche *happy*
* résoudre les conflits et enregistrer les modifications
#### Détour
### Détour
L'historique (`git lo`) montre clairement l'existence d'une branche fusionnée (*happy*). Il eut été possible d'appliquer les modifications enregistrées dans la branche *happy* de sorte qu'il en résulte un historique linéraire (`git rebase`).
* vérifier d'être bien placé sur la branche *master*
* annuler le merge de la branche *happy* (`git reset --hard v0.1`)