libgit2 / libgit2/libgit2sharp

Exception while trying to retrieve last commit from shallow repo

Abierto
#1,493 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
C#
Estrellas
3.5k
Forks
925
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

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.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comience en el punto de entrada Repository.Commits mostrado en el informe y reproduzca el fallo con un repositorio creado mediante git clone --depth xx. Compare la enumeración del repositorio superficial con la NotFoundException indicada y, después, verifique que recuperar el primer commit se realiza correctamente sin el error de objeto faltante. En el issue no se indica ningún archivo de prueba específico.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
csharp, git
Área
devtools
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.