Как стать автором
Обновить

Генерируем commit message на базе шаблона при помощи локальной (и не только) LLM в консоле и без IDE

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.9K
Всего голосов 11: ↑9 и ↓2+9
Комментарии9

Комментарии 9

Замечаетельно! Описания коммитов, сгенерированные нейросетью - читать будет только другая нейросеть.

Если я правильно понял, генерируется описания коммита по заданному шаблону, которое потом используется как черновик, после чего его можно (нужно) править и лишь только после этого окончательно коммитить.

Это ничем не хуже написания бессмысленной портянки вручную.

Если она бессмысленная, то наверно ее просто не надо писать?

Не доказали. А ведь бремя доказательства...

Вот, к примеру, Ваш комментарий содержит арфаграфичечкие ошибки. Да и мой тоже. Уж лучше пусть llm пишет

В комментариях к коду и описании коммитов самая ценная информация - ответы на вопросы "зачем это было сделано?" и "почему было сделало именно так?"

В лучшем случае эту информацию можно достать из тикета, в худшем - только из головы разработчика.

Что за новая дичь - писать отчет по проделанной работе в commit message ? Commit message должен отвечать на вопрос "Зачем изменения?", а не "Какие изменения?". Кто захочет узнать что именно вы изменили - сделает git diff...

Как бы это понятнее объяснить... Представьте себе что вы открываете оглавление книги. Одна ситуация - вы видите понятные и короткие названия глав: "Детство в деревне. // C отцом на охоте // Найденыш // etc". Другое когда там начинается: "В деревне Миндюкино было 3999 обывателей, двое умерло, один приехал из города", "От околицы 300 метров до опушки, далее WSW полтора километра к одинокой сосне"... Формально - описано одно и то же. Но если вы читаете нормальное оглавление - вы можете понять что вы уже видели, куда смотреть не имеет смысла (если вы ищете конкретный фрагмент в книге), а куда надо закопаться! А когда коммит-месседж используют как помойку - ну извините!...

я не знаю, какие кейсы у вас были в работе с сообщениями к коммитам, но я часто собирал релизы, и мне было очень полезно видеть не только ссылку на задачу ("зачем это изменение"), но и фактически короткое описание того, что изменилось для общего понимания картины

У нас были приняты саммари типа таких: "JIRA-XXXX: increased default initial timeout on service connect", "JIRA-YYYY: do not send error details if the receiver signals overflow (error-reporter-client version bump)". Весь смысл в том, что посмотрев на заголовок - вы можете решить: читать этот коммит, или пропустить. Но никакого списка измененых/добавленных/измененных сущностей/файлов разумеется тут нет. Для этого есть git diff, git bisect и остальные команды... Можно спорить - отвечают ли эти заголовки на вопрос "почему?" или "что?" - но это именно высокоуровневое саммари.

ну, как говорится, на вкус и цвет фломастеры у всех разные :)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации