Sobes.tech
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 rebase przepisywuje 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.