• # erreur sur le repos GIT

    Posté par . En réponse au journal Quam Facere, un gestionnaire de procédure IT (Ré-écriture). Évalué à 5.

    le code source est sur source-forge ; un git clone du dépot prend des plombes ; je trouvais cela assez étonnant.

    Avec un peu d'analyse du repos, on peut voir un commit de 430Mo qui correspond à l'image Docker.

    $ git-sizer
    Processing blobs: 177 
    Processing trees: 103 
    Processing commits: 37 
    Matching commits to trees: 37 
    Processing annotated tags: 0 
    Processing references: 36 
    | Name | Value | Level of concern |
    | ---------------------------- | --------- | ------------------------------ |
    | Biggest objects | | |
    | * Blobs | | |
    | * Maximum size [1] | 430 MiB | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
    [1] b699bafcd3346d8619e2853ca9090477ce82b496 (refs/replace/deea37a88c86714f1992b6559d78bc074837fe68:docker_images/qf-2025-0-1.tar.gz)
    $ git verify-pack -v .git/objects/pack/pack-*.idx \
     | sort -k3 -n -r \
     | head -n 10
    b699bafcd3346d8619e2853ca9090477ce82b496 blob 451288576 445611604 539073
    09b3ab35c7360729d2e54c164514ff6c1abc4917 blob 166434 161489 446212250
    f534d5ca22f24aa143d00fddba80261d2f657d67 blob 123233 123083 188119
    56d036704757fe6077f0cec8e668e96ef8c6a219 blob 104409 97184 44279
    5a95f2a41fc43a1e27bbb83084414fcf00502c81 blob 101580 93522 369740
    7fcfd544f431cb3b921ece7572f132b5038f6acc blob 77141 69931 463401
    3aa49e04b0afd9b32e66557c30056047b129530a blob 49166 15611 446189297
    6e805b81985975d1ce5d9ef9549adfbe1df50e0b blob 33294 6737 37542
    a6783d5a82a8a980ad346b41c0f4b41b494c4f93 blob 26364 6137 26826
    430e7a5d235ee05f08a5ffdf07a87d92e1a3ea3e blob 25203 10334 446175016

    J'ai essayé de supprimer le blog b699baf* ; je n'ai pas réussi ; pourtant il existe des techniques qui permettraient de faire disparaitre définitivement ce vilain blob.

    J'ai essayé ca :
    ```bash
    sudo apt install git-filter-repo

    git filter-repo --invert-paths --blob-callback '
    def callback(blob):
    if blob.id.hex == "dd94e5af9309bc288cb95d8cacc8aece49b39068":
    return True # remove it
    return False
    ' --force

    git reflog expire --expire=now --all
    git gc --prune=now --aggressive

    git filter-repo --path docker_mages/qf-2025-0-1.tar.gz --invert-paths --force
    ```

    concernant l'image docker, si elle existait sur le docker-hub, ca serait bien pratique. Je n'ai pas réussi a lancer l'application avec les 2 commandes proposées ci-dessus.

    Il serait bien plus pratique de collaborer sur un site de gestion de code source plus habituel ; source-forge, ca me défrise quelque peu.