Ich vermute, dass git rebase ... --dry-run
nicht möglich ist, aus dem folgenden Grund.
Wenn Sie eine git rebase
machen, wird Git zum Startpunkt zurückrollen, dann inkrementell Patches für jedes Commit anwenden, um die Verzweigung auf den neuesten Stand zu bringen. Wenn es einen Konflikt trifft, wird es aufhören & warten Sie, bis Sie den Konflikt lösen, bevor Sie fortfahren. Der Pfad, den die Rebase nach diesem Konflikt nimmt, hängt davon ab, wie Sie den Konflikt lösen - wenn Sie ihn auf eine bestimmte Art und Weise lösen, könnte dies zu späteren Konflikten führen (oder diese eliminieren).
Somit würde git rebase ... --dry-run
nur in der Lage sein, Sie die ersten Konflikt - Berichte späterer Konflikte werden davon abhängen, wie der erste Konflikt gelöst ist.
Die einzige Möglichkeit, die ich mir vorstellen könnte, wäre über git diff
zwischen der aktuellen Position und dem letzten Commit in der Branche, auf die Sie rebasieren. Aber das wird nicht wirklich geben, was Sie suchen - Sie brauchen wirklich nur eine Liste von widersprüchlichen Änderungen zwischen den beiden Punkten. Dort könnte ein Weg sein, es mit git diff
zu tun, aber es ist kein normaler Patch.
Was ist die genaue Form des Befehls 'git rebase', den Sie verwenden? Verwenden Sie optionale Flags? Und welche Skriptsprache verwenden Sie? Schale? – Jubobs
Wenn Sie 'git rebase' ausführen und einen Zusammenführungskonflikt treffen, wird der Prozess gestoppt und mit einem Nicht-Null-Status beendet. Sie können den Exit-Status der Rebase-Operation überprüfen und, falls es ungleich Null ist, 'git rebase --abort' ausführen, um den Vorgang abzubrechen. – Jubobs
Haben Sie einen Weg gefunden, dies zu tun? – crmpicco