libgit2 / libgit2/libgit2sharp

Default commit order produces incorrectly arranged commits if commit date/time is the same

Offen
#1,975 0 Kommentare 0 Reaktionen 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

By default when you pick up commits using function like this:

repo.Commits.ToArray()

Commits are organized by date time - and if it happens to be the same for two commits, they get randomly re-ordered.

Better query is like this:

repo.Commits.QueryBy(new CommitFilter() { SortBy = CommitSortStrategies.Topological }).ToArray()

Why this cannot be default just to avoid re-arrange problems ?

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 damit, repo.Commits und CommitFilter einschließlich CommitSortStrategies.Topological nachzuverfolgen, um herauszufinden, wie die standardmäßige Reihenfolge der Commits ausgewählt wird. Prüfe, wie mit gleichen Commit-Daten umgegangen wird, und füge eine Abdeckung für diesen Fall hinzu; abgeschlossen ist die Aufgabe, wenn das Standardergebnis Commits mit identischen Daten nicht zufällig neu anordnet.

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

Neue Issues direkt in Ihr Postfach

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