libgit2 / libgit2/libgit2sharp
Exception while trying to retrieve last commit from shallow repo
Personne n'a encore pris cette issue.
- Langage dominant
- C#
- Étoiles
- 3.5k
- Forks
- 925
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
In my custom MSBuild task code tries to get last commit hash to put it into one of assembly attributes. Task works very well with repositories cloned with full depth but fails with the following error in repositories with limited depth created with command git clone --depth xx - where xx is number of last commits to clone.
/home/travis/build/DjvuNet/DjvuNet/DjvuNetBuild.Core.targets(20,5): error :
LibGit2Sharp.NotFoundException:
object not found - no match for id (d53e5a7166904479d42953bd0f91264f5ace1f6d)
[/home/travis/build/DjvuNet/DjvuNet/DjvuNet.NETStandard2.0/DjvuNet.NETStandard2.0.csproj]
Code used to retrieve commit data is as follows:
Repository repo = new Repository(RepoRoot);
var commits = repo.Commits;
var commit = commits.FirstOrDefault();
Seems to be libgit2sharp implementation bug as git fully supports enumeration of limited depth repos.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le point d’entrée Repository.Commits indiqué dans le rapport et reproduisez l’échec avec un dépôt créé à l’aide de git clone --depth xx. Comparez l’énumération du dépôt shallow avec la NotFoundException signalée, puis vérifiez que la récupération du premier commit réussit sans l’erreur d’objet manquant. Aucun fichier de test spécifique n’est indiqué dans l’issue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- csharp, git
- Domaine
- devtools
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100