libgit2 / libgit2/libgit2sharp

TreeEntryChange status is set incorrectly when doing Diff (Deleted instead of Renamed)

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

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

I took a diff between 42b22ab5fe78889aae058c3af342ea67b30b48d5 and e315208fe33d43964fb649935e3bbff2275fa101 which are two consecutive commits in Roslyn codebase. As you can see Github shows the status of all changes as renamed but libgit2sharp detects them as deleted.

Steps to reproduce:

  1. Clone Roslyn's repo
  2. Take a diff between these commits
foreach (TreeEntryChanges change in repo
                    .Diff.Compare<TreeChanges>(commitParents.Single().Tree, commit.Tree, compareOptions: compareOptions))
                {
                    // for all chnages change.Status=ChangeKind.Deleted
                }

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

Reproduisez le diff entre les commits 42b22ab5fe78889aae058c3af342ea67b30b48d5 et e315208fe33d43964fb649935e3bbff2275fa101 à l’aide de la comparaison TreeChanges présentée. Suivez la manière dont TreeEntryChanges attribue ChangeKind pour ces modifications ; le travail est terminé lorsque les entrées concernées indiquent Renamed plutôt que Deleted.

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
35/100

Recevez les nouvelles issues par e-mail

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