Junior — Middle
Paaiškinkite 'git rebase' komandos veikimo principą ir kuo ji skiriasi nuo 'git merge'.
sobes.tech AI
Atsakymas iš AI
Komanda git rebase leidžia perkelti šaką virš kitos, perrašant commitų istoriją taip, tarsi pakeitimai būtų atlikti naujoje šakoje. Tai padeda gauti linijinę istoriją be papildomų sujungimo commitų.
Skirtumai nuo git merge:
git mergesujungia šakas sukurdama naują sujungimo commitą, išsaugodama abiejų šakų istoriją.git rebaseperrašo istoriją, perkeldamas commitus, todėl istorija tampa švaresnė ir linijiška.
Pavyzdys:
git checkout feature
# Perkeliame feature šaką į naujausią master
git rebase master
Po to, feature commitai atrodys tarsi jie būtų sukurti virš paskutinio master commit'o.
Svarbu: nerekomenduojama daryti rebase viešose šakose, nes tai keičia istoriją ir gali sukelti konfliktų kitiems kūrėjams.