Wenn ich einen Fix für eine Änderung habe, die ein paar Commits früher war, lief ich immer zweimal in Folge Rebase. Ist es möglich, diesen Workflow in einem Schritt durchzuführen? Sagen wir, ich habe 4 neue Commits.Kann ich Commits gleichzeitig rebasen und zerquetschen?
* (master) D
* C
* B
* A
* Base
Ich finde einen Fehler in B, also erstelle ich einen Zweig und behebe ihn.
* (master) D
* C
| * (fix) Fix.
|/
* B
* A
* Base
Weiter Ich betreibe git rebase --onto fix B D
C und D auf B zu bewegen
* (master) D'
* C'
* (fix) Fix.
* B
* A
* Base
Schließlich laufe ich git rebase --i fix^^
die letzten Commits zu sehen und ich Squash B und Fix in einem einzigen begehen.
* (master) D'
* C'
* B'
* A
* Base
Gibt es einen schnelleren Weg, um den gleichen Workflow zu erreichen? Ich stelle mir vor, dass das Zusammenführen einfacher wäre, aber das Zusammenführen ist für mich nicht möglich, da ich git svn verwende, das eine lineare Geschichte benötigt.
vielleicht könnten hier die Optionen 'fixup' und' autosquash' helfen? http://stackoverflow.com/questions/2302736/trimming-git-checkins-squashing-git-history/2302947#2302947 – VonC
@VonC Danke, das wird zumindest diese Schritte ein wenig schneller machen. –
ausgezeichnet (für einen Start). Sie könnten eine Antwort veröffentlichen, die veranschaulicht, wie die Schritte mit diesen Optionen schneller sind. – VonC