Inicio·Comandos de terminal

git fsck

git

Uso

git fsck [--lost-found] [--unreachable]

Revisa la base de objetos y enumera commits a los que nada apunta: la segunda forma de recuperar trabajo perdido tras un reset cuando ya no hay reflog; informa, no repara.

Opciones habituales

OpciónSignificado
--lost-foundwrite dangling objects into .git/lost-found
--unreachablelist objects no ref points at
--danglinglist objects nothing at all refers to
--fullcheck packs and alternates too
--connectivity-onlyskip the expensive object checks
--no-reflogsdo not treat reflog entries as roots

Ejemplos

git fsck --lost-found

recovers commits after a reset when the reflog is gone

git fsck --unreachable

lists commits nothing points at any more

git fsck --connectivity-only

a quick structural check on a huge repository

Lo confuso es que deshacer tiene varias formas: mover a dónde apunta una rama no es lo mismo que añadir un commit que la revierte.

Cómo leerlo

  • Los corchetes [ ] marcan una parte que puedes omitir.
  • Los puntos suspensivos … indican que puedes poner varios.
  • Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.

Preguntas

Q. ¿Qué hace git fsck?

Revisa la base de objetos y enumera commits a los que nada apunta: la segunda forma de recuperar trabajo perdido tras un reset cuando ya no hay reflog; informa, no repara.

Q. ¿Cómo se escribe?

git fsck [--lost-found] [--unreachable] — los corchetes marcan lo que puedes omitir.

Q. ¿Cuántas opciones vale la pena saber?

Aquí van 6; la lista completa está en man git. Este comando está en git.

Comandos relacionados

página man: man git-fsck