Что такое слияние
Часть раздела Контроль версий путешествия по Terminal на Coddy — урок 34 из 58.
Слияние переносит работу из одной ветки в другую. После успешного слияния целевая ветка содержит все коммиты из обеих веток, а файлы отражают объединенный результат.
Стандартный рабочий процесс выглядит следующим образом:
- Переключитесь на ветку, в которую вы хотите выполнить слияние (обычно
main). - Выполните команду
git merge other-branch.
git switch main
git merge feature-loginGit просматривает истории двух веток и определяет, как их объединить. В большинстве случаев это происходит автоматически. Два основных вида слияния (merge):
- Fast-forward:
mainне перемещалась с момента создания ветки. Git просто перемещает указательmainвперед. - Трёхстороннее слияние: в обеих ветках появились новые коммиты. Git создает новый «merge commit», который объединяет их.
Вы увидите обе фигуры в следующих двух уроках.
Задание
НовичокПапка содержит app.txt. Настройте репозиторий, сделайте первый коммит в ветку main, затем выведите текущую ветку.
Это просто разминка перед слиянием в следующем уроке.
Шпаргалка
Слияние (merge) переносит работу из одной ветки в другую. Сначала переключитесь на целевую ветку, затем выполните слияние:
git switch main
git merge feature-loginДва типа слияния:
- Fast-forward: ветка
mainне изменялась с момента создания новой ветки — Git просто перемещает указатель вперед. - Three-way merge (трехстороннее слияние): в обеих ветках появились новые коммиты — Git создает новый коммит слияния.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Контроль версий
2Начало работы
Инициализация репозиторияПапка .gitНастройка данных пользователяGit StatusИтоги — первый репозиторий5Игнорирование файлов
Зачем игнорировать файлыШаблоны .gitignoreПроверка правил игнорированияИтоги: чистый репозиторий8Слияние
Что такое слияниеСлияние Fast-ForwardТрёхстороннее слияниеКонфликты слиянияРазрешение конфликтаИтоги — Мастер слияния11Проект: Feature Branch
Обзор проектаИнициализация Main3Отслеживание изменений
Область подготовкиGit AddGit CommitИзменение отслеживаемого файлаGit LogИтоги: первые коммиты6Проект: Сайт рецептов
Обзор проектаИнициализация и игнорирование