Git
Chapters ▾ 2nd Edition

A3.8 Appendix C: Git Kommandos - Patchen bzw. Fehlerkorrektur

Patchen bzw. Fehlerkorrektur

Ein paar Befehle in Git fokussieren sich um die konzeptionelle Überlegung, wie Commits sich in Bezug auf die Änderungen verhalten, die sie einführen, wenn die Commit-Serie eine Reihe von Patches wäre. Diese Befehle helfen Ihnen, Ihre Branches auf dieser Grundlage zu organisieren.

git cherry-pick

Die git cherry-pick Anweisung wird benutzt, um die Änderung, die in einem einzelnen Git-Commit vorgenommen wurde, als neuen Commit auf dem Branch, auf dem Sie sich gerade befinden, erneut vorzunehmen. Das kann sinnvoll sein, um nur ein oder zwei Commits aus einem Branch individuell zu übernehmen, anstatt sie in den Branch einzubringen, der sämtliche geänderten Daten enthält.

Das „Kirschenpflücken“ (engl. cherry picking) wird in Rebasing und Cherry-Picking Workflows beschrieben und demonstriert.

git rebase

Der Befehl git rebase ist im Grunde genommen ein automatisches cherry-pick. Er ermittelt eine Reihe von Commits und nimmt sie dann nacheinander, in der gleichen Reihenfolge, an anderer Stelle wieder auf.

Rebasing wird ausführlich in Rebasing behandelt, einschließlich der Problematik bei der Zusammenarbeit im Zusammenhang mit Rebasing von bereits veröffentlichten Branches.

Wir verwenden ihn bei einem praktischen Beispiel in Replace (Ersetzen) für die Aufteilung Ihres Verlaufs in zwei getrennte Repositorys, wobei auch das Flag --onto benutzt wird.

In Rerere kommt es bei einem Rebase zu einem Merge-Konflikt.

In Ändern mehrerer Commit-Beschreibungen verwenden wir ihn auch in einem interaktiven Skripting-Modus mit der Option -i.

git revert

Der git revert Befehl ist im Prinzip ein umgekehrter git cherry-pick. Er erzeugt einen neuen Commit, der das genaue Gegenteil der Änderung bewirkt, die in dem Commit, auf den Sie gerade zugreifen, eingeführt wurde, d.h. er macht ihn rückgängig.

In Den Commit umkehren verwenden wir diesen Befehl, um einen Merge-Commit rückgängig zu machen.