Récupérer une branche supprimée sous Git

Vous avez supprimé une branche (avec git branch -D nom_de_branche), pas de panique. Tant que le garbage collector n’est pas passé, la branche est toujours dans l’historique.

Retrouvez le hash du dernier commit de la branche en vous baladant dans git reflog (quelques git checkout peuvent être nécessaires pour en voir le contenu). Si vous ne le trouvez pas dans le reflog, tentez git fsck --lost-found.

Une fois que vous avez le numéro magique, faites git branch nom_de_branche votre_hash, et vous voilà sorti d’affaire.

Non ne me remerciez pas, je ne fais que mon devoir madame.

Articles similaires:

  1. Récupérer l’IP client avec Nginx en proxy sous CherryPy/Django/Bottle – proxy_set_header
  2. Récupérer le load average d’un serveur avec python + fonction sleep
  3. Une astuce pour ne plus avoir peur des merges avec Git
  4. Quelques commandes Git qu’elles sont bien
  5. Comment ne pas avoir à préciser “origin master” pour git pull et git push

flattr this!

4 comments

  1. De même que le raid ne protège pas d’un rm -rf, avoir un gestionnaire de source n’empêche pas les sauvegardes :)

  2. kontre

    En parlant de garbage collector, vous pouvez réduire fortement la taille du dossier .git et le temps de recherche dans l’historique en forçant son utilisation par git gc (ajoutez l’option --aggressive pour un peu plus d’efficacité). Sur certains dépôts j’ai pu gagner un facteur 20 en taille et 100 en recherche. Ça fonctionne super bien !

  3. Etienne

    typo: –lost-found

  4. C’est pas une typo, c’est cette bitch de WP qui te “corrige” certains trucs sans te prévenir.

Flux RSS des commentaires

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Jouer à mario en attendant que les autres répondent