Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Git
- ## Lexique
- Commit : Patch
- Fast-forward merge: Merge d'avance rapide
- > Un merge d'avance rapide peut se produire lorsqu'il existe un **chemin linéaire** entre la pointe de branche actuelle et la branche cible. Au lieu de fusionner "réellement" les branches, tout ce que Git a à faire pour intégrer les **_commits_** est de déplacer (c'est-à-dire "avancer rapidement") la pointe de branche actuelle jusqu'à la pointe de branche cible. Cela combine efficacement les historiques, car tous les **_commits_** accessibles depuis la branche cible sont désormais disponibles via la branche actuelle. Par exemple, une fusion rapide vers l'avant d'une fonctionnalité dans master ressemblerait à ceci:
- ![fast-forward](https://user-images.githubusercontent.com/9381120/77190484-9ba5c000-6ad9-11ea-8261-3e0f28f5d404.png)
- Merge : Fusion
- ## Merges
- Il existe plusieurs méthodes de merge :
- - **Merge avec commit** (jamais) :
- - Chaque merge créer un commit.
- - **Merge avec commit et historique semi-linéaires** (par défaut) :
- - Le merge créer un commit.
- - Seulement si un fast-forward est possible,
- - Quand il y a des conflits, l'utilisateur à l'option de rebase.
- ![merge](https://user-images.githubusercontent.com/9381120/77191798-cd1f8b00-6adb-11ea-8721-ccd89befbd46.png)
- - **Fast-forward merge** (cas spécifiques):
- - Le merge ne créer pas de commit.
- - Seulement si un fast-forward est possible,
- - Quand il y a des conflits, l'utilisateur à l'option de rebase.
- ![fast-forward](https://user-images.githubusercontent.com/9381120/77190484-9ba5c000-6ad9-11ea-8261-3e0f28f5d404.png)
- ## Rebase
- Lorsqu'une branche a du retard sur une autre, il est possible de "rebaser" la première sur la seconde. C'est ce qu'on appelle un **rebase**. Cette action débute au commit d'origine de la branche (dans notre exemple ci dessous, _ec53cfe_) et applique les patchs que la branche n'a pas par dessus ce commit d'origine un à un. Ensuite, elle applique tout les commits de la branche actuelle par dessus le dernier commit de la branche cible (cela créé de nouveaux commits !). Voici un exemple :
- ![rebase](https://user-images.githubusercontent.com/9381120/77193389-75ceea00-6ade-11ea-9910-83aa18277339.png)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement