Hier ist der Deal. Master hat eine Datei, Datei1. Ich verzweige und lösche diese Datei in der Verzweigung. Inzwischen modifiziere ich Datei1 auf Master. Boom, Konflikt.
Wenn ich meinen Zweig in den Master mische, besteht die Auflösung darin, die Datei zu löschen. Ich versuche, git rerere
zu verwenden, um die gleiche Auflösung mehrmals durchführen zu können, aber wie Sie unten sehen können, wird die Auflösung nicht aufgezeichnet, wenn Sie die Datei löschen.
Ich kann hier keine Dokumente speziell finden, ist dies nur eine Einschränkung von rerere
?
Hier sollten wir etwas wie "aufgezeichnete Auflösung für Datei1.txt" sehen, aber wir nicht. Nur um sicher zu sein, dass es nicht unsere Auflösung aufzeichnet, gehen wir weiter und machen das gleiche Merge erneut:
%Vor% Und hier können Sie sehen, dass git rerere
sich nicht an die Konfliktlösung erinnert (und die Datei in der Baumstruktur fälschlicherweise tatsächlich verlässt).
Wie es gerade steht, versucht No-Rerere, vorherige Auflösungen auf Basis von Hunks in jeder konfliktbehafteten Datei aufzuzeichnen. Im Falle des Löschens sieht rerere es nur als keine zu lösenden Hunks.
Ich hatte auch Probleme, wenn der Feature-Zweig eine neue Datei enthält, die nicht im Hauptzweig existiert, aber um den Feature-Zweig in den Master zu integrieren und ihn richtig arbeiten zu lassen, erfordert er eine kleine Änderung neue Datei. Der git rerere erkennt nicht, dass dies ein Teil des gesamten Merge-Prozesses ist und notiert daher niemals die erforderlichen Änderungen.
Tags und Links git git-rerere