Junior — Middle
Vysvetlite, v čom sa líši použitie príkazov git rebase a git merge pri integrácii zmien do vetiev.
sobes.tech AI
Odpoveď od AI
git merge a git rebase sú dva spôsoby, ako integrovať zmeny z jednej vetvy do druhej, ale fungujú odlišne:
-
git merge vytvorí nový commit zlúčenia, ktorý spojí históriu oboch vetiev. História zachováva všetky rozvetvenia a commity, čo poskytuje úplný obraz vývoja.
-
git rebase presunie commity aktuálnej vetvy na inú vetvu a prepíše históriu. To robí históriu lineárnejšou a čistejšou, ale mení hash-ové hodnoty commitov.
Príklad:
# merge
git checkout feature
git merge main
# rebase
git checkout feature
git rebase main
Kedy použiť:
mergeje vhodný na zachovanie celej histórie a keď je dôležitá transparentnosť vetiev.rebaseje užitočný na zjednodušenie histórie pred zlúčením s hlavným vetvou, aby sa predišlo zbytočným commitom zlúčenia.
Dôležité: neodporúča sa robiť rebase na verejných vetvách, pretože to mení históriu a môže spôsobiť konflikty u iných vývojárov.