git mergeПомимо смешных пятничных картинок хотел поделиться болью при использовании git merge в промышленной разработке.

У нас технические проекты тоже выгружаются в git, хотя разработку в них ведут в Конфигураторе. При этом релизы в основной ветке выходят примерно раз в две недели, но разработка задачи часто превышает этот период. Поэтому проекты переодически актуализируются на новую версию конфигурации.

И вот здесь появляется проблема при использовании ГитКонвертера. При сравнении и объединении с новой конфигурации поставщика должен происходить git merge. Но ГитКонвертер об этом ничего не знает и при выгрузке делает очередной коммит, в котором появятся все изменения из новой конфигурации поставщика. На картинке - это первая пунктирная линия. То есть должен быть git merge, но его нет.

Когда такой проект нужно отправить на код-ревью, с помощью Pull/Merge request, то разница между основной и веткой проекта получается большой. Это происходит из-за того, что родительским коммитом будет момент открытия, а не актуализации. То есть в изменениях будут все коммиты сделанные в проекте, в том числе и наш коммит с актуализацией проекта. И именно он привносит с собой много лишних изменений. На картинке - это вторая (красная) пунктирная линия.

В понедельник расскажу как мы боремся с этой проблемой.

git mergeПомимо смешных пятничных картинок хотел поделиться болью при использовании git merge в промышленной разработке | Сетка — новая социальная сеть от hh.ru
repost

253

input message

напишите коммент

БП все еще разрабатываете с использованием Хранилища? Иначе зачем ГитКонвертер использовать?

ответить

24.06

Да, еще используем хранилище. При этом БНКО и Садовод уже полностью на ЕДТ

ответить

еще контент в этом сообществе

еще контент в этом соообществе

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь