Что такое git rebase
Python
Middle
Без компании
Что такое git rebase
Ответы
Git rebase — это команда, которая позволяет перезаписать историю коммитов, перемещая изменения из одной ветки в другую. В отличие от `merge`, который создаёт новый коммит слияния, `rebase` "перемещает" ваши коммиты поверх другой ветки, делая историю линейной и чистой.
**Основные сценарии использования:**
- **Обновление feature-ветки:**
```
git checkout feature
git rebase main
```
Перемещает коммиты из `feature` на вершину `main`.
- **Интерактивный rebase (`-i`):**
Позволяет редактировать, объединять или удалять коммиты перед их перемещением:
```
git rebase -i HEAD~3
```
**Плюсы:**
- Чистая, линейная история.
- Избегает лишних коммитов слияния.
**Минусы:**
- Перезаписывает историю → опасно для публичных веток.
- Может усложнить отладку из-за изменения хешей коммитов.
**Важно:** Не используйте `rebase` для веток, которые уже были отправлены в общий репозиторий!