Junior — Middle
Koje su razlike između komandi 'git merge' i 'git rebase' prilikom integracije promena u granu?
sobes.tech АИ
Одговор од АИ
Komande git merge i git rebase se koriste za integraciju promena iz jedne grane u drugu, ali rade na različite načine:
-
git merge kreira novi commit spajanja koji ujedin istorije obe grane. Istorija ostaje kao grana, što omogućava da se vidi kada i kako je došlo do spajanja.
-
git rebase premešta (prepisuje) commit-ove trenutne grane na drugu granu, stvarajući linearnu istoriju bez commit-ova spajanja. Ovo pojednostavljuje istoriju, ali menja hash-ove commit-ova, što može izazvati poteškoće u saradnji.
Primer:
# merge
git checkout feature
git merge main
# rebase
git checkout feature
git rebase main
Izbor zavisi od preferencija tima: merge čuva celokupnu istoriju, rebase je čisti i linearni.