Mémo Git · Worktrees

Nettoyer un worktree disparu

git worktree prune

Si le dossier d'un worktree a été supprimé ou déplacé hors de git, le dépôt garde sa référence et sa branche reste considérée comme extraite. git worktree prune retire les références dont le dossier n'existe plus.

Ce que ça fait

Si le dossier a été supprimé ou déplacé hors de git, le dépôt garde sa référence et sa branche reste considérée comme extraite. Il faut retirer cette référence.

Un cas d'usage

Tu as effacé le dossier avec ton gestionnaire de fichiers : git considère encore sa branche comme extraite tant que la référence existe.

En ligne de commande

git worktree prune --dry-run --verbose
Montre ce qui serait retiré, sans rien changer.
git worktree prune
Retire les références des dossiers disparus.
git worktree repair <dossier>
Rétablit le lien si le dossier a seulement été déplacé à la main.

Dans Merathon

  1. Le worktree apparaît avec la mention « introuvable » dans la section « Worktrees ».
  2. Clic droit → « Retirer de la liste… » : seule la référence est retirée, la branche reste.

Questions fréquentes

La commande touche-t-elle à ma branche ?

Non : seule la référence du worktree est retirée. La branche et ses commits restent, et la branche peut de nouveau être extraite.

Mon worktree sur disque externe risque-t-il d'être nettoyé ?

Oui, si le disque est débranché au moment du nettoyage. git worktree lock <dossier> le protège.

Voir aussi