Bezpečný Git rebase
Rebase přehraje commity na nový základ, přepíše jejich identity a vytvoří lineární historii.
Jak to funguje
Na lokální pracovní větvi načti aktuální main a přehraj na něj své nezveřejněné commity, přičemž každý konflikt vyřeš před pokračováním; pokud výsledek neodpovídá záměru, operaci zruš a před přepsáním historie, ze které už někdo jiný vychází, se s ním domluv.
git fetch origin
git rebase origin/main
# After resolving a conflict:
git add path/to/resolved-file
git rebase --continue
# To return to the state before this rebase:
git rebase --abortPřečíst dokumentaciČastý omyl
Rebase pouze neposune ukazatel: přehrané commity dostanou nové hashe.
Krátké procvičení
1. Co rebase přepisuje?
Historii commitů.
2. Kdy je nejbezpečnější?
U nezveřejněných commitů.
3. Jak ho zrušíš?
git rebase --abort