Comme j'ai récemment essayé de pousser mes commits à github, j'ai reçu le même message d'erreur que dans ce question. J'ai retiré les fichiers de mon dépôt mais je dois maintenant nettoyer l'historique. Comme conseillé dans les réponses j'ai regardé BFG, ce qui semble être la solution. En lisant le instructions, il commence par utiliser git --mirror link-to-remote-repo
.Nettoyage de l'historique git avec BFG
Maintenant je me demande, parce que je ne pouvais pas encore pousser le plus récent commit et probablement mon historique de commit local est plus long que celui sur github. En outre, je ne suis pas sûr que tout le travail que j'ai fait est sur une branche et non sur le maître et comment cela affecte mon référentiel.
Qu'est-ce qu'une question? – Ivan
Ce que je ne comprends pas, c'est que pour utiliser BFG, je devrais faire un clone nu ('--mirror') de mon dépôt distant. Mais ce n'est pas à jour. Alors, comment cela va-t-il fonctionner? Je nettoie l'historique du miroir distant, mais il reste encore un peu d'historique à propos de ce fichier dans mon dépôt local dans les commits que j'ai fait après la dernière fois que j'ai poussé sur github. – fukurai
Ok. Dans le cas où vous n'avez pas un grand nombre de changements (commits), vous pouvez le faire manuellement: vérifier la nouvelle branche sur le commit de base; Pour chaque commit (de la branche problématique) - 1) utilisez la commande 'git cherry-pick --no-commit'; 2) supprimer du fichier binaire problématique de l'index (s'il existe); 3) commit –
Ivan