Mémo Git · Worktrees
Déplacer ou verrouiller un worktree
git worktree move <dossier> <nouveau-dossier> ; git worktree lock <dossier>
git worktree move déplace le dossier d'un worktree en gardant le lien avec le dépôt. git worktree lock le protège de la suppression et du nettoyage, par exemple s'il est sur un disque externe. git worktree unlock lève la protection.
Ce que ça fait
move déplace le dossier en gardant le lien avec le dépôt. lock le protège de la suppression et du nettoyage, par exemple s'il est sur un disque externe ; git worktree unlock lève la protection.
Un cas d'usage
Ton worktree est sur une clé USB souvent débranchée : verrouillé, il ne sera pas nettoyé par erreur.
Attention : Ne déplace pas le dossier à la main : le lien serait rompu. Passe par git worktree move.
En ligne de commande
git worktree move <dossier> <nouveau-dossier>- Déplace le worktree.
git worktree lock --reason "disque externe" <dossier>- Verrouille le worktree, en notant la raison.
git worktree unlock <dossier>- Lève le verrou.
git worktree repair <dossier>- Rétablit le lien après un déplacement fait à la main.
Dans Merathon
- Ces opérations se font en ligne de commande : ouvre le panneau du bas (Ctrl+J) puis l'onglet « Terminal ».
- Un worktree verrouillé porte la mention « verrouillé » et ne peut pas être supprimé depuis l'application.
Questions fréquentes
Puis-je déplacer le dossier à la main ?
Mieux vaut l'éviter, car le lien serait rompu. Si c'est déjà fait, git worktree repair <dossier> le rétablit depuis le dépôt principal.
Peut-on déplacer le worktree principal ?
Pas avec git worktree move, qui refuse aussi les worktrees contenant des sous-modules.