En supposant un graphe de validation comme ceci:
| (A) ---------> (B) ----------> (C)
| ^
| (master)
Vous souhaitez d'abord effectuer le paiement master
et créer une branche qui pointe vers où master
se trouve actuellement:
git checkout master
git branch pointer master
Devrait ressembler à ceci maintenant:
| (A) ---------> (B) ----------> (C)
| ^
| (HEAD, master, pointer)
Maintenant que vous êtes déjà sur master
, nous allons dire à la master
branche de reculer d'un commit:
git reset master~1
Maintenant, master
devrait être reculé d'un espace, mais la pointer
branche est toujours sur le commit le plus récent:
| (A) ---------> (B) ----------> (C)
| ^ ^
| (HEAD, master) (pointer)
À ce stade, vous pouvez pousser master
vers une télécommande, ou n'importe où, puis la fusionner en avance rapide vers la pointer
branche. Vous pouvez tuer la pointer
branche à ce stade:
git push origin master
git merge --ff-only pointer
git branch -D pointer
Finale:
| (A) ---------> (B) ----------> (C)
| ^ ^
| [ origin/master ] (HEAD, master)