libgit2 / libgit2/libgit2sharp

FileHistory return empty enumerable for deleted files

Offen
#1,612 3 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
C#
Sterne
3.5k
Forks
925
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Reproduction steps
  1. Create a file and commit
  2. Delete the file and commit
  3. Query the log for that specific file: IEnumerable<LogEntry> logs = repo.Commits.QueryBy(fileName);
Expected behavior

The logs enumerable contains 2 entries (initial commit and delete commit)

Actual behavior

The logs enumerable is empty

Version of LibGit2Sharp (release number or SHA1)

v0.25.2

Operating system(s) tested; .NET runtime tested

Windows 7
.Net Framework 4.7.1

Note that git log will also (by default) not return any results when specifying the file name only:

image

However, when telling git explicitly if a revision or a file is specified, git log will show the expected results:

image

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne beim Einstiegspunkt repo.Commits.QueryBy(fileName) und reproduziere die im Issue beschriebene Historie der gelöschten Datei. Vergleiche die Behandlung des Dateiarguments mit dem im Bericht beschriebenen Verhalten von git log. Das Ziel ist erreicht, wenn die Abfrage sowohl den initialen als auch den Lösch-Commit zurückgibt und ein Regressionstest diese Abfolge abdeckt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
csharp, git
Bereich
devtools
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.