Verwenden Sie den Bisect-Workflow
Bisect findet den ersten Commit, der ein Problem verursacht hat, indem es den Verlauf zwischen einem Commit, bei dem es vorhanden ist, und einem Commit, bei dem es nicht vorhanden ist, wie git bisect, halbiert. Wählen Sie die beiden Commits aus, testen Sie den Commit, den GitTree auscheckt, markieren Sie ihn als Good oder Bad und wiederholen Sie den Vorgang, bis er den Namen First bad commit trägt.
Funktioniert in GitTree Kostenlos: alle lokalen Git-Funktionen, sobald Sie angemeldet sind.
Auf dieser Seite
Bevor Sie beginnen
- Sie kennen einen Commit, bei dem das Problem besteht, und einen älteren, bei dem es nicht auftrat, und wissen, wie Sie es testen können.
- Übernehmen oder speichern Sie Ihre Änderungen: bisect prüft Commits.
Wo es zu finden ist
- Wählen Sie die beiden Commits im Diagramm aus und klicken Sie mit der rechten Maustaste: Bisect Between These Commits.
| Aktion | macOS | Windows und Linux |
|---|---|---|
| Jump to HEAD | ⌘⇧H | Ctrl+Shift+H |
Schritte
Beginnen Sie zwischen zwei Commits
Wählen Sie einen Commit mit dem Problem und einen älteren ohne dieses aus (Strg-Klick, ⌘-Klick auf einem Mac) und wählen Sie Bisect Between These Commits. Das neuere wird als schlecht behandelt, das ältere als gut.
Testen Sie den ausgecheckten Commit
GitTree prüft einen Commit zur Hälfte und gibt an, wie viele Revisionen noch zum Testen übrig sind. Erstellen Sie Ihren Test oder führen Sie ihn aus.
Markiere es
Wählen Sie im Banner Good aus, wenn das Problem nicht vorliegt, Bad, wenn es vorhanden ist, oder Skip, wenn Sie diesen Commit nicht testen können.
Lesen Sie die Antwort
Wenn ein Commit übrig bleibt, sagt GitTree First bad commit: mit seinem SHA. Show in Graph wählt es aus.
Erwartetes Ergebnis
Sie wissen genau, welcher Commit das Problem verursacht hat; Wählen Sie End Bisect, um zum Ausgangspunkt zurückzukehren.
Tipps
- Jeder Schritt halbiert den Rest: Tausend Commits erfordern etwa zehn Schritte.
- Während der Halbierung befinden Sie sich auf einem abgetrennten KOPF; das wird erwartet.
- End Bisect bringt Sie immer dorthin zurück, wo Sie angefangen haben.
Wenn etwas schief geht
Die Halbierung zwischen diesen Commits ist ausgegraut
Wählen Sie genau zwei Commits aus und beenden oder brechen Sie zuerst alle laufenden Zusammenführungen oder Rebases ab.
Fragen
Was passiert, wenn ein Commit nicht erstellt wird?
Wählen Sie Skip. Git wählt stattdessen einen Commit in der Nähe aus; Die Antwort könnte dann eher eine kurze Reichweite als ein Commit sein.