Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Git: git rebase, merge

Что происходит с историей коммитов при использовании rebase?

Вопрос проверяет понимание того, как rebase влияет на историю коммитов и чем он отличается от merge.

Короткий ответ

rebase переписывает историю коммитов. Коммиты из одной ветки последовательно «переигрываются» поверх другой. В результате создаются новые коммиты с новыми хешами. История становится линейной. Старые коммиты фактически перестают существовать.

Длинный ответ

rebase — это операция изменения истории Git.

Как работает rebase

При выполнении rebase Git:

  1. находит общий коммит-предок

  2. временно убирает коммиты текущей ветки

  3. применяет их поверх целевой ветки

  4. создает новые коммиты

С точки зрения Git это не перемещение, а пересоздание.

Что происходит с коммитами

После rebase:

  • каждый коммит получает новый hash

  • старая история больше не используется

  • ветка выглядит как линейная последовательность

Чем отличается от merge

  • merge сохраняет историю и добавляет merge-коммит

  • rebase переписывает историю без merge-коммитов

Почему это важно

rebase:

  • делает историю чище

  • упрощает чтение логов

  • опасен для публичных веток

Использование rebase в shared-ветках:

  • ломает ссылки у других разработчиков

  • приводит к конфликтам при pull

Практическое правило

  • локальные ветки → rebase

  • общие ветки → merge

Вывод: rebase переписывает историю, создавая новые коммиты, и должен использоваться осознанно.

Уровень

  • Рейтинг:

    5

  • Сложность:

    6

Навыки

  • Git

    Git

Ключевые слова

#git rebase

#merge

Подпишись на Java Developer в телеграм