Warum Rebase
Rebase schreibt Ihren Branch um, sodass er an der Spitze eines anderen Branches startet.
Der grundlegende Rebase
git checkout feature/login
git fetch origin
git rebase origin/main
git status
git add <file>
git rebase --continue
git rebase --abort
Interaktiver Rebase
git rebase -i HEAD~5
pick 1a2b3c4 Add login form
pick 5d6e7f8 Fix typo
pick 9a0b1c2 Refactor auth helper
reword- Commit behalten, Nachricht andern.edit- pausieren zum andern.squash- mit vorherigem kombinieren.fixup- kombinieren, Nachricht verwerfen.drop- Commit entfernen.
Die Goldene Regel
Niemals Commits rebasen, die gepusht und von anderen konsumiert wurden.
Autosquash-Workflow
git commit --fixup <sha>
git commit --fixup <sha>
git rebase -i --autosquash main
Rebase versus Merge
Beide integrieren Anderungen.
Rerere fur wiederholte Konflikte
git config --global rerere.enabled true