Junior — Middle
Wyjaśnij zasadę działania polecenia 'git rebase' i czym różni się od 'git merge'.
sobes.tech AI
Odpowiedź od AI
Polecenie git rebase pozwala przenieść gałąź na inną, przepisyując historię commitów tak, jakby zmiany zostały dokonane na nowej gałęzi. Pomaga to uzyskać liniową historię bez dodatkowych commitów scalania.
Różnice w stosunku do git merge:
git mergełączy gałęzie, tworząc nowy commit scalania, zachowując historię obu gałęzi.git rebaseprzepisywuje historię, przesuwając commity, co czyni historię bardziej czystą i liniową.
Przykład:
git checkout feature
# Przenosimy gałąź feature na aktualny master
git rebase master
Po tym, commity feature będą wyglądały, jakby zostały utworzone na podstawie ostatniego commitu master.
Ważne: nie zaleca się wykonywania rebase na publicznych gałęziach, ponieważ zmienia to historię i może powodować konflikty u innych programistów.