Junior — Middle
Принсипи кори 'git rebase' ва фарқияти он бо 'git merge'-ро шарҳ диҳед.
sobes.tech AI
Ҷавоб аз AI
Команда git rebase имкон медиҳад, ки як шохро ба болои дигар гузошта шавад, ки таърихи комитҳоро такрорбарор мекунад, гӯё тағирот дар як шохи нав анҷом ёфта бошад. Ин кӯмак мекунад, ки таърихи хаттӣ бе комитҳои иловагии омезишӣ ба даст оред.
Фарқиятҳо бо git merge:
git mergeшохҳоро пайваст мекунад, бо эҷоди як комити нав барои омезиш, таърихи ҳар ду шохро нигоҳ медорад.git rebaseтаърихиро навишт, комитҳоро кӯчонида, таърихи бештар тоза ва хаттӣ мекунад.
Масалан:
git checkout feature
# Шохи feature-ро ба актуалӣ кардани master кӯчонед
git rebase master
Пас аз ин, комитҳои feature мисли он хоҳанд буд, ки онҳо дар болои охирин комити master сохта шудаанд.
Муҳим: тавсия дода намешавад rebase дар шохҳои умумӣ, зеро ин таърихиро тағир медиҳад ва метавонад боис гардад ба ихтилофот бо дигар таҳиягарон.