libgit2 / libgit2/pygit2

ValueError `repo.branches.get('branch_no_exist/')` trailing slashes in branch names

Ouverte
#832 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

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

Description

if i have a repo and call

>> 'branch_no_exist' in repo.branches
False

as expected, but

>> 'branch_no_exist/' in repo.branches
Traceback (most recent call last):

  pygit2/repository.py", line 1156, in get
    return self[key]
 pygit2/repository.py", line 1144, in __getitem__
    branch = self._repository.lookup_branch(name, GIT_BRANCH_LOCAL)
ValueError: cannot locate local branch 'branch_no_exist/'

Given branch names Shouldn't end in a slash, but the error is not complaining about this.

should repository.lookup_branch be returning None in this case?

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 dans pygit2/repository.py, au niveau de la méthode get et du chemin getitem indiqué dans le traceback, puis reproduisez les recherches d’une branche inexistante avec et sans slash final. Vérifiez les tests existants de recherche de branches et définissez l’aboutissement comme une gestion cohérente du cas avec slash final, couverte par un test de régression.

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

Évaluation

Stack technique
git, python
Domaine
tooling
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
38/100

Recevez les nouvelles issues par e-mail

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