tenía el mismo problema, lo que comando git me encontré, terminó con el mensaje:
fatal: object <hash> is corrupted
no tenía una copia de seguridad y no quiero perder mis confirmaciones, así que decidí tratar la solución de Jase y eliminado el archivo 0 longitud que tenía: .git/objects/00/<hash>
a continuación tiene la misma:
$ git status
fatal: bad object HEAD
Entonces, traté de saber lo que estaba mal y mirado en .git/refs/heads/master
donde tuve el hash.
Miré en .git/logs/refs/head/master
y encontraron líneas como ésta:
<old commit> <new commit> <author> <timestamp> commit: <commit message>
I retira la última línea (que tenía =) y pegado de esta línea en .git/refs/heads/master
, borrando su contenido
yo era entonces capaz de comprometerse exitosamente
Debo añadir que la causa raíz de esto fue la corrupción del disco en mi máquina virtual, que no se cerró correctamente. – Keyo