Встречается на собеседованиях • сегодня
В чем разница между amend и squash
amend и squash — это команды Git для изменения истории коммитов, но они работают по-разному:
git commit --amend
- Перезаписывает последний коммит, добавляя новые изменения или изменяя его сообщение.
- Не создает новый коммит, а модифицирует существующий.
- Пример:
bash
git commit -m "Initial commit" # Добавляем изменения и исправляем коммит git add . git commit --amend -m "Updated initial commit"
git rebase -i + squash
- Объединяет несколько коммитов в один во время интерактивного ребейза.
- Позволяет "схлопнуть" несколько коммитов в один, сохраняя историю чище.
- Пример (в интерактивном режиме ребейза):
Результат — один коммит с изменениями из всех трех.bash
pick abc123 First commit squash def456 Second commit squash ghi789 Third commit
Ключевое отличие:
amend— для правки последнего коммита,squash— для объединения нескольких коммитов в один.
⚠️ Обе команды изменяют историю — используйте осторожно в общих ветках!

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы