Comments 6
Вот бы котаны подсуетились и сделали возможность делать запрос на слияние прямо из IDE не в мастер, а в родительский бранч для ситуаций, когда несколько разрабов свои правки подливают как мерж реквесты с фичами в девелоперский бранч из которого потом формируется релиз. Получается что-то вида
git push -o merge_request.create -o merge_request.target=${parent_branch} -o merge_request.remove_source_branch -o merge_request.squash"
Каждый раз приходится вспоминать имя родительского бранча. Сам гитлаб всегда подставляет master
Стесняюсь спросить, а как у гита узнать какой была родительская ветка? Или я чего-то не знаю о гите?
Например можно взять все коммиты между текущим бранчем и мастером и взять ближайший бранч (костылики вокруг git merge-base).
Ну или вот так (чуть не поседел, пока это воткнул, форматтер хабра сжирает часть даже при вставке в середину блока "кода")
git show-branch | grep '*' | grep -v "$(git rev-parse --abbrev-ref HEAD)" | head -n1 | sed 's/.*\[\(.*\)\].*/\1/' | sed 's/[\^~].*//' #
но иногда промахивается и показывает всё-таки мастер. Но отобразить по дефолту в предложке мержреквеста - вполне сойдёт
Не знаю что у вас за проект, его масштабы и количество коммитов, но в команде 5-6 человек и регулярной выкаткой это всё бесполезным и нерабочим становится от слова совсем. Угадайка больше опасна, чем полезна.
Угадайка которую вы не пробовали более опасна чем мержи в мастер с которого релизы раскатываются? Может у вас и прямые коммиты в мастер не запрещены?
Мне не надо играть в "русскую рулетку", чтобы понять, что это может вынести мне мозг на стену. А вот опыт, когда разработчик в торопях полагается на "угадайку" и получает неожиданный результат видел лично.
Можно сколько угодно спорить, но ненадёжная подсказка иногда хуже её отсутствия. Использование ChatGPT последние полгода тому опытное доказательство.
Ну и вы мне пытаетесь что доказать? Я вполне конкретно обозначил, что в достаточно большом проекте, в который регулярно что-то куда-то мержат и берут наработки друг друга до попадания их в основные ветки, используют squash при мержах и т.п. эта угадайка вообще офигеет и никогда не найдёт исходной ветки. Зачем тогда функционал, который будет больше путать, чем помогать? А маленькие проекты и без этого прям прекрасно справляются.
В IDE от JetBrains появилась интеграция с GitLab