Las ramas remotas eliminadas en el servidor pueden quedar como referencias locales obsoletas. git remote prune y git fetch --prune las eliminan.
El problema
Cuando un compañero elimina una rama remota, tu repositorio local aún conserva origin/rama-eliminada. Con el tiempo se acumulan decenas de referencias muertas.
Soluciones
git fetch --prune origin limpia al hacer fetch. git remote prune origin limpia sin fetch. Configura fetch.prune = true globalmente.
Ramas locales huérfanas
Usa git branch --merged para encontrar ramas locales ya mergeadas. Elimínalas con git branch -d. Combina con prun para limpieza completa.
Automatización
Script semanal de limpieza: fetch con prune, listar ramas sin remoto, eliminar las mergeadas. Evita acumulación de referencias.

