Я работал в ветке, и в моем коммите было очень подробное сообщение. Формат был:
Title
Details (multiple lines).
Я создал MR, но когда MR был объединен, я вижу фиксацию слияния и мою новую фиксацию только с Title. Детали исчезли. Если я сделаю git show $sha либо в $sha моей локальной ветки, либо сделаю git log в удаленной ветке, я увижу полное сообщение. Но в мастере я вижу только название. Как это может происходить? Есть ли какая-то конфигурация Gitlab, которая может быть причиной этого?
Обновление после комментария @Ôrel: Коммиты сквоша были выбраны заранее. В ветке было 2 коммита с одинаковым форматом, т.е. Заголовок/Подробное сообщение. Объединенный (сжатый) коммит имеет заголовок одного коммита (не того, который был в верхней части ветки), а детали удалены. Как выбирается сообщение коммита в таком сквош/слиянии?
@Ôrel: Да, я видел это предварительно выбранное
@Ôrel: Это причина? На самом деле в ветке было 2 коммита. извините, я не упомянул об этом
@Ôrel: Теперь я заметил, что он используется в качестве заголовка одного из двух заголовков коммитов. Заказ был A<-B<-Branch т.е. A был сверху. А в сквоше использовалось название коммита B и удалены детали из A и B. Как этот сквош должен работать?
Сквош будет использовать ваш контент MR, а не ваш коммит-контент.
@Ôrel: Что вы подразумеваете под содержанием MR? В MR был текст, но он тоже не использовался.
Обратите внимание, что операция сквоша не является слиянием (называть ее "сквош-слиянием", как это делает Git, вероятно, было ошибкой). Вы по-прежнему можете свободно использовать его и настраивать по своему усмотрению, просто имейте в виду, что это не слияние. Также обратите внимание, что почти все, что связано с «запросом на слияние», специфично для GitLab (MR не являются частью базового Git).
По умолчанию gitlab будет использовать название запроса на слияние при фиксации сквоша.
%{title}
Вы можете добавить дополнительную информацию см. https://docs.gitlab.com/ee/user/project/merge_requests/commit_templates.html#default-template-for-squash-commits
Если вы хотите сохранить информацию от коммитов, вы можете использовать такой шаблон, как:
%{title}
%{all_commits}
Чтобы найти шаблон
Где должен быть этот шаблон?
На верхней панели выберите Главное меню > Проекты и найдите свой проект. На левой боковой панели выберите Настройки > Мерж-реквесты.
Вы раздавливаете ветку при слиянии? вы можете увидеть это при создании запроса на слияние «Сквош фиксируется, когда запрос на слияние принят»