Makina Blog
Git : réconcilier HEAD détaché sur un commit avec une branche
Petite astuce #git bien utile, si vous avez perdu le fil.
Lorsque votre commande git status vous indique, après un
rebase -i interrompu, ou un git co <commit> :
HEAD détachée sur 0e3e5ef
...
Vous êtes perdu. En fait il manque la branche entre HEAD et le
commit sur lequel il est positionné.
En temps normal HEAD est positionné sur une branche qui constitue
une référence, et qui est positionnée sur un commit. Lorsqu'un nouveau
commit est créé, la branche se positionne sur ce nouveau commit, et
HEAD suit la branche.
Le plus simple est de créer une branche temporaire, puis rétablir la
base de votre branche en cours dessus. Mettons que vous êtes sur la branche dev :
git checkout -b temp
Un git status donne :
* 0e3e5ef - (HEAD, temp) Commit détaché
* c084b24 - (origin/dev, dev) Dernier commit
* 3f4b825 - Autre modification
Si cela vous convient, vous pouvez positionner dev
git branch -f dev temp
git checkout dev
Il vous reste à supprimer la branche temporaire
git branch -d temp
Source: Stackoverflow
Crédit photo:
Lost (by Spawk), CC-By, in Flickr
Actualités en lien
Librairie d’authentification OpenID Connect Django
Django
08/04/2025
 
  DbToolsBundle, sortie de la version 2
Symfony
18/03/2025
 
  Comment compresser son code applicatif de manière efficace avec Nginx et Brotli ?
DevOps
25/04/2023
 
   
        