3 votes

Réparer les commits et les tags suspendus dans un dépôt git

J'ai un dépôt git nu qui, selon git fsck --full, compte environ 300 commits et tags errants. Environ 90% d'entre eux sont des tags errants.

Je ne suis pas sûr d'où viennent ces problèmes, mais le dépôt semble fonctionner correctement, donc ils pourraient être présents depuis un certain temps déjà.

J'aimerais les corriger, mais jusqu'à présent, rien de ce que j'ai essayé n'a résolu les problèmes. J'ai jusqu'à présent essayé ces commandes :

git reflog expire --expire=now --all
git gc --prune=now --aggressive
git repack -a -d

Comment puis-je corriger ces commits et tags errants ? Sont-ils un problème en fin de compte ? Il est important que je ne perde pas l'historique et les tags et je suis un peu préoccupé par le grand nombre de tags errants.

Cordialement

0voto

anion Points 125

Les commits et les tags errants sont des commits et des tags qui ne sont pas "atteignables", ce qui signifie qu'ils ne font pas partie de l'historique de HEAD ou d'une branche. Si et seulement si vous ne manquez actuellement aucun commit, alors vous pouvez les supprimer. Pour supprimer les commits errants, DrZoo a déjà posté un bon lien. Supprimer les tags à l'aide de git peut parfois être un peu délicat. Mais vous pouvez également supprimer les tags manuellement. Si git vous dit que vous avez un

tag errant b61fdaf08acb1412b629b1913da21143775e523a

par exemple, vous pouvez le supprimer en supprimant le fichier

dossierderepository\.git\objects\b6\1fdaf08acb1412b629b1913da21143775e523a

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X