Sobes.tech
Back to questions
Junior — Middle
82

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

Companies where asked
AndersenAndersen

Answer from AI

sobes.tech AI

Команда git rebase позволяет перенести одну ветку поверх другой, переписывая историю коммитов так, будто изменения были сделаны на базе новой ветки. Это помогает получить линейную историю без дополнительных merge-коммитов.

Отличия от git merge:

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

Пример:

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

После этого коммиты feature будут как будто созданы поверх последнего коммита master.

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