Ich benutze Git Extensions jetzt schon eine Weile (es ist großartig!), Aber ich habe keine einfache Antwort auf Folgendes gefunden:
Wenn Sie eine Commit-Nachricht eingeben, machen Sie manchmal einen Tippfehler. Mein Freund hat mir gezeigt, wie man es folgendermaßen behebt (in Git Extentions):
Klicken Sie mit der rechten Maustaste auf Commit> Erweitert> Fixup-Commit
Dann aktiviere ich einfach das Kontrollkästchen "Ändern" und schreibe meine Nachricht und voila neu! Meine Commit-Nachricht ist behoben.
Allerdings diese andere Option "Squash Commit" ... Ich habe mich immer gefragt, was es tut?!
Meine Frage ist:
Würde mir jemand einfach erklären, was der genaue Unterschied zwischen Squash-Commit und Fixup-Commit in Git / Git-Erweiterungen ist ? Sie sehen mir irgendwie ... "ähnlich" aus :
quelle
rebase
Informationen zu und Squash / Fixup finden Sie in den Git-Dokumenten .Einfach ausgedrückt, wenn Sie eine Reihe von Commits neu festlegen
squash
, bietet Ihnen jedes als gekennzeichnete Commit die Möglichkeit, seine Nachricht als Teil einerpick
oder einerreword
Commit-Nachricht zu verwenden.Wenn Sie
fixup
die Nachricht aus diesem Commit verwenden, wird sie verworfen.quelle
fixup
?Aus dem git-rebase-Dokument, Abschnitt "Interaktiver Modus" :
quelle
Wenn die Frage ist , was ist der Unterschied zwischen
squash
undfixup
in git , wenn dabei git rebase --interactive , dann ist die Antwort die Nachricht begehen .Beispielsweise:
Die Commit - Nachricht , nachdem in Rebasing 1 Fall wäre:
während die Festschreibungsnachricht in Fall 2 lautet:
quelle
Ich bastelte an Git-Erweiterungen und konnte es nicht schaffen, viele Commits in einem zusammenzufassen. Dazu musste ich auf die Kommandozeile zurückgreifen und fand diesen Beitrag hilfreich
Dies ist eine interaktive Rebase. Beachten Sie Folgendes:
quelle
Warum nicht git selbst fragen? Wenn Sie mit neu gründen
git-bash
, heißt es:Nun siehst du:
quelle