libgit2 / libgit2/pygit2

clone / fetch operations are extremely slow on gitlab cloud repos

Ouverte
#1,372 3 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Python
Étoiles
1.7k
Forks
408
Merge moyen
2 j 57 min
PR mergées (30 j)
7

Description

Reproduces on pygit2 1.17.0/1.18.0 / python 3.11 on Mac / Linux:

import pygit2
pygit2.clone_repository("https://gitlab.com/antora/antora", "/tmp/antora")

Takes more than 10 minutes, while the cli equivalent:

git clone https://gitlab.com/antora/antora /tmp/antora 

Takes a few seconds.
Started happening ~10 days ago in our production env, worked well before and still works well for github and bitbucket hosted repos (moving the problematic repos to github solves it).
Started happening out of no where - we didn't deploy or made any change in our environment.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par l’appel à pygit2.clone_repository montré dans le rapport et comparez son comportement avec celui de la CLI git pour le dépôt GitLab. Reproduisez le problème avec pygit2 1.17.0 et 1.18.0 sous Python 3.11, puis cherchez pourquoi les clonages depuis GitLab sont lents alors que ceux depuis GitHub et Bitbucket ne le sont pas. Le travail est considéré comme terminé lorsque le clone et le fetch s’achèvent dans un délai comparable à celui de la CLI.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
git, gitlab, python
Domaine
devtools, networking
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.