Junior — Middle
Vysvětlete princip fungování příkazu rebase v systému správy verzí Git a v čem se liší od merge.
sobes.tech AI
Odpověď od AI
Příkaz git rebase se používá k přesunutí nebo 'přepsání' série commitů na novou základnu, tj. na jiný commit. Umožňuje vzít změny z jedné větve a 'přehrát' je na jinou větev, čímž vznikne lineární historie bez dalších merge commitů.
Rozdíly od git merge:
- git merge spojí dvě větve a vytvoří nový merge commit, který zachovává historii obou větví s větveními.
- git rebase přesune commity jedné větve na vrchol jiné, přepisuje historii a činí ji lineární.
Příklad:
Pokud máte větev feature, odvozenou od masteru, a master byl aktualizován, pak:
git merge masterve feature vytvoří merge commit, který spojí změny.git rebase masterve feature přesune vaše commity nad aktuální stav masteru, jako byste začali pracovat od posledního stavu masteru.
Rebase je užitečný pro udržení čisté historie, ale vyžaduje opatrnost při práci s veřejnými větvemi, aby nedošlo k přepsání sdílené historie.