Задать вопрос
Viji
@Viji
DevOps Engineer

Что происходит под капотом git при разрешении Merge conflict?

Привет всем,

типичная ситуация - перед посылкой branch feature-A234 в remote repo с помощью (git push origin feature-A234) делаю local merge таким образом:
git checkout develop
git pull develop
git checkout feature-A234
git merge develop
---> получаю следующий merge conflict (на рисунке)
5eeb2982df4f2182930905.png

Редактирую показанный на экране файл, удаляю
>>>>HEAD
>>>>develop

Получилось в общем, смесь develop и моего branch :

24: resource "aws_network_acl" "feature_acl" {
25: ## this acl created by the other user
26: vpc_id = "${aws_vpc.main.id}"
27: }
28:
29: resource "aws_network_acl" "my_acl" {
30: ## this acl created by vadim
31: vpc_id = "${aws_vpc.main.id}"
32: }

после этого делаю
git add -A
git commit -m "conflict resolution"
git push origin feature-A234

Затем делаю Pull Request на удаленном GitHub/Bitbucket и никаких конфликтов нет... Не понимаю почему, ведь я вообще все изменил и даже добавил новые строки как vpc_id = "${aws_vpc.main.id}" ? Ведь в оригинальном develop нет этого кода и Pull Request должен создать новый конфликт, из-за наложения строк, а он не происходит

Можете подробнее обьяснить, как это работает?

всем добра,
Вадим
  • Вопрос задан
  • 245 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • ProductStar
    Python + Flask + Git: веб-разработка с нуля
    2 месяца
    Далее
  • Учебный центр IBS
    DEV-007 Введение в систему контроля версий Git
    1 неделя
    Далее
  • Stepik
    Git (система контроля версий)
    1 неделя
    Далее
Решения вопроса 1
Конфликт бы возник, если в файл в оригинальном develop внесли изменения.
А так, git видит, что есть путь по коммитам до файла в оригинальном develop и он соответствует тому, на который были наложены изменения во время разрешения конфликта, а значит можно смело заменять файл новым.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
Made In Dream Санкт-Петербург
от 100 000 до 220 000 ₽
от 250 000 до 320 000 ₽