Pro Git
Pro Git ¡Bravo!, acabas de añadir una rama denominada recover-branch al punto donde estaba originalmente tu rama master; permitiendo así recuperar el acceso a las dos primeras confirmaciones de cambios.
A continuación, supongamos que la pérdida se ha producido por alguna razón que no se refleja en el registro (reflog) --puedes simularlo borrando la rama recover-branch y borrando asimismo el registro--. Con eso, perdemos completamente el acceso a las dos primeras confirmaciones de cambio:
$ git branch -D recover-branch $ rm -Rf .git/logs/La información de registro (reflog) se guarda en la carpeta .git/logs/; por lo que, borrándola, nos quedamos efectivamente sin registro. ¿Cómo podríamos ahora recuperar esas confirmaciones de cambio? Una forma es utilizando el comando de chequeo de integridad de la base de datos: git fsck. Si lo lanzas con la opción --full, te mostrará todos los objetos sin referencias a ningún otro objeto: