libgit2 / libgit2/pygit2

repo.status() appears to be broken?

Abierto
#684 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Python
Estrellas
1.7k
Forks
408
Merge medio
2 d 57 min
PR fusionados (30 d)
7

Descripción

I'm running repo.status().items() in a pre-commit hook using the -a flag (git commit -a -m "Test"), and I get a result that looks like this:

[('config/git_hooks/pre-commit', 256), ('bin/run_flake8', 256)]

If I run git status in that same process, I get:

On branch ops_1331_fix
Your branch is ahead of 'origin/ops_1331_fix' by 2 commits.
  (use "git push" to publish your local commits)
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    modified:   bin/run_flake8
    modified:   config/git_hooks/pre-commit

In other words, pygit2 is reporting those files as not being staged, and git is reporting them as being staged. Why the discrepancy?

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

Empieza reproduciendo la discrepancia con repo.status().items() en el pre-commit hook al usar git commit -a; después, compara su resultado con git status para los dos archivos indicados. Lee la pygit2 status API y el comportamiento relacionado de libgit2; el trabajo estará terminado cuando expliques por qué los archivos preparados reciben el estado 256 y corrijas la discrepancia si se trata de un error.

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

Evaluación

Stack tecnológico
git, python
Área
devtools
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.