Sobes.tech
Junior — Middle

Vysvětlete princip fungování příkazu 'git rebase' a v čem se liší od 'git merge'.

sobes.tech AI

Odpověď od AI

Příkaz git rebase umožňuje přesunout větev na jinou, přepisováním historie commitů tak, jako by změny byly provedeny na nové větvi. To pomáhá získat lineární historii bez dalších merge commitů.

Rozdíly od git merge:

  • git merge spojuje větve vytvořením nového merge commit, zachovávající historii obou větví.
  • git rebase přepisuje historii, přesouváním commitů, což činí historii čistší a lineárnější.

Příklad:

git checkout feature
# Přesuneme větev feature na aktuální master
 git rebase master

Po tomto budou commity feature vypadat, jako by byly vytvořeny na posledním commitu masteru.

Důležité: nedoporučuje se dělat rebase na veřejných větvích, protože to mění historii a může způsobit konflikty u ostatních vývojářů.