web-dev-qa-db-fra.com

Impossible de retirer la branche même après avoir supprimé Worktree et exécuté Worktree Prune

Je crée un arbre de travail pour la branche en utilisant la commande suivante:

Git add worktree <path> <branch-name>

Cela a créé un nouvel arbre de travail pour moi et a vérifié la branche sur le chemin

Maintenant, j'ai pensé à supprimer/supprimer l'arbre de travail. Exécutez les commandes suivantes:

rm -rf <path>
git worktree Prune

Idéalement, cela devrait supprimer l'arbre de travail et supprimer la référence pour ce chemin également. Alors maintenant, je devrais être en mesure de vérifier la succursale. Mais lorsque j'exécute la commande suivante pour passer à cette branche:

git checkout <branch-name>

Je reçois cette erreur:

fatal: '<branch-name>' is already checked out at ''

Quelqu'un pourrait-il m'aider avec ce qui se passe.

45
Randeep Singh

J'ai travaillé autour de cela en effaçant .git/worktrees/<branch-name> depuis le répertoire du référentiel.

47
msteed

Je pense que la bonne commande est:

git worktree Prune
9
Temawito

Git aime juste être de mauvaise humeur parfois, mais ce qui a fonctionné pour moi, c'était d'abord de vérifier quels arbres de travail étaient encore actifs en utilisant cette commande sur git bash

git worktree list

Ensuite, vous verrez également tous vos arbres de travail et votre enfant à problème, après l'avoir vu, regardez le nom de la branche qu'il a enregistré car ils incluent l'adresse complète de votre répertoire. Copiez le nom de la branche entière et collez-le en tant que tel ou tapez-le si cette personne

git worktree remove <FullBranchName>  (e.g C:/temp/foldername)
0
Luthando Matshaya