Vergleichen von Unterschieden zwischen einer Rebase in Git

Angenommen, ich habe gerade die Niederlassung neu gegründetfoo aufmastermit Konflikten. Ich möchte sicherstellen, dass ich den Inhalt von nicht versehentlich beschädigt habefoo während der Konfliktlösung durch Einführung zusätzlicher Änderungen oder Verlust von Änderungen (die nicht für die Konfliktlösung geeignet sind). Ich habe dies getan über:

diff -u <(git diff `git merge-base master foo@{1}` foo@{1}) \
        <(git diff `git merge-base master foo    ` foo    )

(Update: oder das Äquivalent... Syntax fürgit-diff woran ich gerade erinnert wurde :)

diff -u <(git diff master...foo@{1}) <(git diff master...foo) | mate

Dies zeigt mir alle Änderungen, die aufgetreten sindmaster..foo als Patch betrachtetDas ist genau das, was ich überprüfen möchte, um minimal zu sein. Der Aufruf ist jedoch komplex und die Ausgabe ist nicht ganz einfach zu interpretieren.

Gibt es einen besseren Weg, um diese Aufgabe zu erledigen - dieselben Informationen bereitzustellen, aber mit einer besseren Methode oder einem besseren Format - oder sollte ich einfach das oben Genannte in ein Skript einbinden?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage