Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Войти

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

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

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про Git: merge, fast forward, three way, commit, conflict

Что является результатом git merge?

Проверяет понимание типов merge‑операций и их эффектов на истории.

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

git merge объединяет две ветки: если изменения не пересекаются, создаёт fast‑forward (перемещает указатель ветки). При наличии расхождений — создаёт новый «merge‑коммит», объединяющий родительские ветки, сохраняя обе истории. Он позволяет сохранить информацию об объединении и точки ветвления.

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

Fast‑forward merge:

  • Если целевая ветка не имеет новых коммитов над базой, указатель просто перемещается вперёд.

  • История остаётся линейной без merge‑коммита.

Three‑way merge:

  • При расхождении веток Git находит общий предок, потом применяет изменения обеих веток.

  • Создаётся новый коммит с двумя родителями.

Merge‑конфликты:

  • Если одно и то же место изменено в обеих ветках, Git остановится и попросит разрешить конфликт.

  • После разрешения — git add и git commit.

Опции:

  • --no-ff заставляет всегда создавать merge‑коммит.

  • --squash объединяет все изменения в один коммит без сохранения истории.

Вывод:

merge позволяет интегрировать параллельные разработки и сохранять контекст ветвления.

Уровень

  • Рейтинг:

    2

  • Сложность:

    6

Навыки

  • Git

    Git

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

#merge

#fast forward

#three way

#commit

#conflict

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