Компьютеры · Инструкция
Как объединить несколько коммитов Git в один
Интерактивный rebase переписывает историю, поэтому до публикации он безопаснее, чем после общего push.
Короткий ответ
Для последних коммитов используйте `git rebase -i HEAD~N`: первый оставьте `pick`, следующие пометьте `squash` или `fixup`.
Что делать
- Проверьте `git status` и сохраните незакоммиченные изменения.
- Запустите `git rebase -i HEAD~4` для четырёх последних коммитов.
- Оставьте первый `pick`, остальные смените на `squash`/`fixup` и сохраните todo.
- Проверьте `git log --oneline -5`; если история уже опубликована, используйте только согласованный `--force-with-lease`.
Проверка результата
- В git log вместо выбранной серии виден один итоговый commit.
- git status чистый, а опубликованная общая ветка не переписана без согласования.
Важно
Rebase меняет SHA коммитов; не переписывайте общую ветку без согласования.
Что учитывать
Rebase меняет SHA коммитов; не переписывайте общую ветку без согласования.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. git-rebase Documentation). Пример и формулировки — редакция N1RO на 2026-09-17.