• Re: =?iso-8859-1?Q?probl=E8m?= =?iso-8859-1?Q?e?= avec git clone

    From Marc Chantreux@21:1/5 to didier gaumet on Thu Feb 20 12:30:02 2025
    Bonjour,

    On Thu, Feb 20, 2025 at 10:35:42AM +0100, didier gaumet wrote:
    je suis une truffe question réseaux

    pourquoi tu commences toujours tous tes mails par "je suis une buse mais …" alors que tes réponses et questions sont souvent super pertinentes?

    comprends pas: en quoi cette suite de commandes serait-elle plus efficace
    que celle lancée par Benoît?

    ça n'aide pas du tout: si *un* clone ne marche pas chez Benoit, les
    clones recursifs proposés par Bernard n'ont aucune chance ne serait-ce
    que d'être lancé.

    je n'ai pas vraiment d'idée et j'aurais tendance à ouvrir un wireshark
    pour voir ce qui se passe sur le réseau parce que:

    * le message d'erreur explicite l'usage d'HTTP 2
    * la conf de Benoit parle de forcer HTTP 1.1

    au doigt mouillé (sans avoir cherché du tout):

    * l'erreur donne l'impression que la connexion est même trop instable
    pour télécharger des blocks complets du depot.
    * y'a des options comme ça

    git config --global http.postBuffer 524288000

    * il faudrait voir si il y a une option (peut-etre celle-ci) qui
    permette de réduire la taille des blocks. ca fait plus de requetes
    mais plus de chance d'aboutir?

    bref … j'ai pas de vrai avis.

    peux peut-être regarder la taille du MTU pour ta liaison internet et ton éventuel réseau local https://www.malekal.com/modifier-mtu-interface-reseau-windows-linux/ https://fr.wikipedia.org/wiki/Maximum_transmission_unit

    MTU c'est encore plus bas dans la couche IP mais l'idée est la même je
    pense: plus de petits paquets, c'est plus long mais plus robuste.

    A prendre avec des pincettes, question réseaux j'ai le niveau de compréhension d'une vache qui regarde passer un train :-)

    Et moi celui d'un passager qui regarde les vaches.


    --
    Marc Chantreux
    Pôle CESAR (Calcul et services avancés à la recherche)
    Université de Strasbourg
    14 rue René Descartes,
    BP 80010, 67084 STRASBOURG CEDEX
    03.68.85.60.79

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Marc Chantreux@21:1/5 to All on Thu Feb 20 13:50:02 2025
    salut,

    On Thu, Feb 20, 2025 at 12:19:40PM +0100, Benoît Barbier wrote:
    Complètement pourrie, je n'ai même pas pu écouter de la musique en ligne durant le clonage...

    je ne connais pas assez la gestion d'erreur dans les réseaux mais si ton
    réseau est si pourri, je dirais qu'éviter tout traffic autre que le
    clonage en cours pourrait peut-être déjà aider ?

    Et quand je parle de musique en ligne c'est pas des trucs qui bouffent de la bande passante et des ressources CPU avec des java-script pourris.

    ca c'est pas la bande passante. la stack web est effectivement
    problèmatique.

    Juste mpv en ligne de commande dans un terminal sur un fichier streaming
    d'un hébergeur libre et communautaire.

    ben télécharge plutôt que de streamer? ca évite de soliciter la bande
    passante à chaque écoute. (dit quelqu'un qui a fait ces premieres
    connexions internet à 9600 bauds).

    # apropos git|grep \^git-|grep -i http
    git-http-backend (1) - Server side implementation of Git over HTTP
    git-http-fetch (1) - Download from a remote Git repository via HTTP
    git-http-push (1) - Push objects over HTTP/DAV to another repository
    # man git-http-backend

    j'y ai trouvé ce dont je parlais dans mon message précédent et nul
    besoin de le configurer définitivement puisqu'une variable
    d'environement existe:

    GIT_HTTP_MAX_REQUEST_BUFFER environment variable (or the http.maxRequestBuffer config option)
    (par defaut 10M)

    Aussi: si tu n'as pas besoin de l'historique, tu peux réduire grandement
    la taille du téléchargement en ne gardant que l'état au dernier commit
    (--depth [ancienneté]). perso je --depth 1 la plupart du temps. j'ai
    même fait un alias -s git='git clone --depth=1' et pour un projet aussi
    gros que Darktable, y'a pe plus d'historique que de code.

    l'un dans l'autre, je te propose donc de tester la commande suivante:

    GIT_HTTP_MAX_REQUEST_BUFFER=5M git clone --depth=1 https://github.com/darktable-org/darktable

    si t'as la flemme de tester plusieurs tailles de buffers tu peux écrire

    for size in 7 5 3 1; do
    GIT_HTTP_MAX_REQUEST_BUFFER=${size}M git clone --depth=1 \
    https://github.com/darktable-org/darktable &&
    break
    done

    bonne chance


    --
    Marc Chantreux
    Pôle CESAR (Calcul et services avancés à la recherche)
    Université de Strasbourg
    14 rue René Descartes,
    BP 80010, 67084 STRASBOURG CEDEX
    03.68.85.60.79

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)