5 votes

Comment supprimer une branche et tous les objets qu'elle référençait ?

Le problème est qu'après avoir supprimé et poussé une branche, celle-ci n'est pas perdue à jamais et se trouve toujours dans le dépôt. J'ai supprimé une branche avec une grande quantité de fichiers inutiles, mais tant qu'elle est toujours quelque part dans le dépôt git, la durée de la commande git clone est trop importante.

Pour l'instant, la seule solution que je vois est de supprimer tout le référentiel et de le recréer, mais sans branche inutile.

4voto

CharlesB Points 27070

Je crois git gc --prune=now fera ce que vous voulez : nettoyer les fichiers inutiles de votre dépôt.

Par défaut git gc supprime les commits inaccessibles datant de plus de 2 semaines, donc l'ajout de --prune=now est ce dont vous avez besoin.

3voto

ralphtheninja Points 24346

Vous devez supprimer complètement les fichiers en utilisant git filter-branch

http://git-scm.com/docs/git-filter-branch

Vous pouvez faire beaucoup de magie avec cette commande, la suivante supprimera le nom de fichier de tous les commits :

git filter-branch --tree-filter 'rm -f filename' HEAD

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X