Back to questions
Junior — Middle
69
Объясните, что означает команда interactive rebase в системах контроля версий Git и как она используется для редактирования истории коммитов.
Answer from AI
sobes.tech AI
Команда git rebase -i (interactive rebase) позволяет интерактивно изменить историю коммитов в ветке. С её помощью можно:
- Изменить порядок коммитов
- Объединить несколько коммитов в один (squash)
- Изменить сообщения коммитов
- Удалить ненужные коммиты
- Разбить коммит на несколько
При выполнении git rebase -i <base> Git откроет текстовый редактор со списком коммитов, начиная с указанной базы. Пользователь может редактировать команды перед каждым коммитом (pick, squash, edit и др.), чтобы изменить историю.
Пример использования:
# Запустить интерактивный rebase для последних 3 коммитов
git rebase -i HEAD~3
В открывшемся редакторе можно заменить pick на squash для объединения коммитов или edit для изменения содержимого коммита.
Это полезно для очистки истории перед публикацией ветки, чтобы сделать её более читаемой и логичной.