libgit2 / libgit2/libgit2sharp

Reading Branch.UpstreamBranchCanonicalName throws an exception

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

Personne n'a encore pris cette issue.

Up for grabs
Langage dominant
C#
Étoiles
3.5k
Forks
925
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

LibGit2 0.24.0. In C#, when I access the UpstreamBranchCanonicalName property on Branch I get this exception:

Message        : Value cannot be null.                                      
                 Parameter name: name                                       
ParamName      : name                                                       
Data           : {}                                                         
InnerException :                                                            
TargetSite     : System.String get_UpstreamBranchCanonicalName()            
StackTrace     :    at LibGit2Sharp.Branch.get_UpstreamBranchCanonicalName()
                    at LibGit2.Automation.BranchInfo..ctor(Branch branch)   
HelpLink       :                                                            
Source         : LibGit2Sharp                                               
HResult        : -2147467261                                                

I am enumerating the branches in PowerShell:

            $repo.Branches |
                ForEach-Object { New-Object LibGit2.Automation.BranchInfo $_ }

The constructor for my LibGit2.Automation.BranchInfo object is where Branch throws an exception:

        public BranchInfo(Branch branch)
        {
            Name = branch.FriendlyName;
            CanonicalName = branch.CanonicalName;
            UpstreamBranchCanonicalName = branch.UpstreamBranchCanonicalName;
            IsRemote = branch.IsRemote;
            IsTracking = branch.IsTracking;
            IsCurrentRepositoryHead = branch.IsCurrentRepositoryHead;
            Tip = new CommitInfo(branch.Tip);
        }

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 reproduire l’exception lors de l’énumération de repo.Branches via le constructeur LibGit2.Automation.BranchInfo, en vous concentrant sur l’accès à Branch.UpstreamBranchCanonicalName présenté dans le rapport. Vérifiez le comportement pour les branches qui déclenchent l’erreur de nom null et confirmez que l’énumération des branches se termine sans l’exception.

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é
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
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.