Ответ
Squash в Git — это объединение нескольких коммитов в один. Часто используется перед мержем веток для упрощения истории.
Как сделать squash:
- Во время интерактивного ребейза:
git rebase -i HEAD~3 # объединяем последние 3 коммита
В редакторе заменить pick
на squash
(или s
) для коммитов, которые нужно объединить.
- При мерже с флагом
--squash
:
git merge --squash feature-branch
git commit -m "Объединённый коммит"
Плюсы:
- Чистая история коммитов
- Удобно для фиксации законченного функционала
Минусы:
- Теряется детальная информация о промежуточных изменениях