Sobes.tech
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.