Closed ttauveron closed 7 years ago
Voici les étapes à suivres :
git clone --mirror https://github.com/ApplETS/ETSMobile-Android2.git
wget http://repo1.maven.org/maven2/com/madgag/bfg/1.12.13/bfg-1.12.13.jar -O <chemin vers bfg>/bfg.jar
java -jar <chemin vers bfg>/bfg.jar --delete-files "*\.{jar,class,apk}"
git reflog expire --expire=now --all && git gc --prune=now --aggressive
Enssuite, il est fortement recommandé de tester le projet.
Par contre, comme dit @gnut3ll4 , puisque les commits ont été réécris, il faudra utiliser git push --force
; et, demander aux utilisateurs de faire un nouveau checkout.
Pour comprendre les commandes ci-dessus, voir https://rtyley.github.io/bfg-repo-cleaner/
Je vois qu'il reste encore pas mal d'autres types de fichier à gérer comme les dex. Je regarde ça.
Ok ! Pour la commande à utiliser (en référence aux instructions ci-haut) :
java -jar ~/apps/bfg-1.12.13.jar --delete-files "*\.{jar,class,dex,apk,jks,ap_,gradletasknamecache}" --delete-folders "{build,out,bin,gen,.gradle,.idea}" .
Ça fait passer le repos de ~90MB à ~15MB.
Bien joué !!
Par contre, on ne peut pas faire de pull request pour ça puisque l'opération change l'historique. De plus, il faut tester les changements de manière s'assurer que ça fonctionne.
Pour tester, puisque le commit HEAD n'est pas touché par l'opération, il faut aller chercher l'avant dernier commit.
@gnut3ll4 est-ce que c'est toi qui se charge de ça ?
Merci encore @mikefaille le repo est nettement moins lourd !
Voir discussion : https://github.com/ApplETS/ETSMobile-Android2/commit/a51b89bfa0495583a21e0146270fc6e3f3bf4d5a#commitcomment-18891774
Utiliser l'outil : https://rtyley.github.io/bfg-repo-cleaner/
Les contributeurs devront repartir de la branche nettoyée pour leurs modifications car bfg change les hash des commits, une fusion créerait donc un double de tous les commits dans l'historique.