PRO

Что такое git rebase -i? Как сквашировать коммиты?

git rebase -i запускает интерактивное редактирование истории, где можно менять порядок, переименовывать, объединять и удалять коммиты. Сквашивание коммитов выполняют через команду squash в интерактивном rebase.
Подробный ответ

Что такое git rebase -i

git rebase -i — это интерактивный rebase, который открывает список коммитов для редактирования. С его помощью можно менять историю ветки перед публикацией.

git rebase -i HEAD~3

Что можно делать в интерактивном rebase

  • pick — оставить коммит как есть;

  • reword — изменить сообщение коммита;

  • edit — остановиться и отредактировать коммит;

  • squash — объединить коммит с предыдущим;

  • drop — удалить коммит.

Как сквашировать коммиты

Чтобы объединить несколько коммитов в один, в интерактивном списке нужно оставить первый как pick, а следующие пометить как squash или fixup. После этого Git предложит собрать одно итоговое сообщение коммита.

Как ответить на собеседовании

git rebase -i позволяет редактировать историю коммитов. Для сквашивания я ставлю squash у лишних коммитов, и Git объединяет их в один.

Оцени свой прогресс

Честно оцени своё понимание этого вопроса, чтобы мы могли построить твой учебный трек максимально эффективно.
Читать в блоге