git prune

Administración

Elimina objetos inalcanzables


El comando 'git prune' elimina los objetos sueltos que ninguna rama, tag, índice ni entrada del reflog puede alcanzar — por ejemplo commits abandonados hace mucho. Forma parte de git gc, que normalmente conviene usar en su lugar. Los objetos eliminados no se pueden recuperar.

Sinopsis

git prune [-n] [-v] [--expire <time>]
[ ] opcional| o<arg> valor a sustituir... repetible--flag opción

Ejemplos

Vista previa

git prune -n -v

Lo que se eliminaría.


A través de gc

git gc --prune=now

La forma habitual.

Ejemplos de flujos de trabajo

1
git reflog expire --expire=now --all

Olvidar el reflog

2
git prune

Borrar los objetos ya inalcanzables

Solución de problemas

No se elimina nada

Causa: El reflog aún referencia los objetos

Haz caducar antes el reflog (o espera 90/30 días)

Consejos y trampas

Buenas prácticas

  • ✓Usa git gc en lugar de llamar a prune directamente.

Errores comunes

  • ✗Confundir git prune con git remote prune (que quita ramas remotas obsoletas).

Preguntas frecuentes

A:

No. Si dudas, ejecuta antes git fsck --lost-found.