Sobes.tech
Junior — Middle

Обяснете принципа на работа на командата 'git rebase' и в какво се различава от 'git merge'.

sobes.tech AI

Отговор от AI

Командата git rebase позволява да преместите клон върху друг, като препишете историята на комитите така, сякаш промените са направени на нов клон. Това помага да се получи линейна история без допълнителни merge комити.

Разлики от git merge:

  • git merge обединява клонове, създавайки нов merge комит, запазвайки историята и на двата клона.
  • git rebase преписва историята, преместване на комитите, което прави историята по-чиста и линейна.

Пример:

git checkout feature
# Преместваме клона feature върху актуалния master
 git rebase master

След това, комитите на feature ще изглеждат, сякаш са създадени върху последния комит на master.

Важно: не се препоръчва да се прави rebase върху публични клонове, тъй като това променя историята и може да предизвика конфликти при други разработчици.