command-line:git:branches
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| command-line:git:branches [le 03/04/2013 à 09:28] – Yosko | command-line:git:branches [le 26/05/2025 à 11:57] (Version actuelle) – Yosko | ||
|---|---|---|---|
| Ligne 3: | Ligne 3: | ||
| ===== Gestion basique des branches ===== | ===== Gestion basique des branches ===== | ||
| + | |||
| + | |||
| + | ===== Commandes principales ===== | ||
| + | Le plus simple : | ||
| <code bash> | <code bash> | ||
| git branch | git branch | ||
| git branch A # | git branch A # | ||
| - | git checkout A #work on branch A (replaces files in working dir) | ||
| - | git merge B #merge B modifications into the current branch | ||
| - | git branch -d B #delete branch B | ||
| </ | </ | ||
| + | Changer de branche (le contenu du dossier local sera celui de la branche) : | ||
| + | <code bash> | ||
| + | git checkout A #work on branch A | ||
| + | </ | ||
| + | |||
| + | Créer une nouvelle branche issue de l' | ||
| + | <code bash> | ||
| + | git checkout -b hotfix | ||
| + | </ | ||
| + | |||
| + | Fusionner le contenu d'une branche (ici, hotfix) dans la branche courante (ici, master) : | ||
| + | <code bash> | ||
| + | git checkout master | ||
| + | git merge hotfix | ||
| + | </ | ||
| + | |||
| + | Il ne reste plus qu'à supprimer la branche devenue inutile : | ||
| + | <code bash> | ||
| + | git branch -d hotfix | ||
| + | </ | ||
| + | |||
| + | ===== Test de fusion ===== | ||
| + | |||
| + | Effectuer un merge à blanc : | ||
| + | <code bash> | ||
| + | git merge --no-commit --no-ff < | ||
| + | </ | ||
| + | |||
| + | Retour arrière : | ||
| + | <code bash> | ||
| + | git merge --abort | ||
| + | </ | ||
| + | ===== Précisions sur la fusion ===== | ||
| + | Si on fusionne avec une branche qui avait juste quelques commits de plus, il se passe juste un " | ||
| + | * Si aucun conflit, un nouveau commit est créé sur la branche de destination, | ||
| + | * Si un conflit au moins est détecté, une tentative de merge est faite en local, et c'est au développeur de corriger le conflit avant de le commiter (voir plus bas) | ||
| ===== Conflits ===== | ===== Conflits ===== | ||
| Si, lors d'une fusion, un conflit apparait, les fichiers concernés comporteront un ou plusieurs passages de la forme : | Si, lors d'une fusion, un conflit apparait, les fichiers concernés comporteront un ou plusieurs passages de la forme : | ||
command-line/git/branches.1364981330.txt.gz · Dernière modification : le 03/04/2013 à 09:28 de Yosko
