Привет всем.
Возник такой вопрос. У нас есть Bitbucket репозиторий, который связан с Jira.
Для правильной работы этой интеграции надо в commit message добавлять код issue с которым он связан.
Так вот проблема в том как прикрутить какой-нибудь commit message checker (validator) чтобы не разрешать коммит без ссылки на jira issue. Мне кажется что задача не редкая, но почему-то с ходу не гуглится.
Венрнее гуглятся плагины типа вот такого https://marketplace.atlassian.com/plugins/com.isroot.stash.plugin.yacc/server/overview
Но не уверен что это подходит - у нас репозиторий хостится на самом Bitbucket Cloud
Если кто делал, буду очень признателен за совет.
Возможно это еще можно реализовать на уровне git hooks или в самом Source Tree.
Нашел такой вариант
http://tech.yipit.com/2011/11/16/183772396/
отсюда
http://stackoverflow.com/questions/23495113/automatically-rejecting-a-commit-based-on-certain-criteria
буду пробовать
А если тебе нужно будет коммитнуть что-то, маленький фикс, без номера issue?
Это конечно интересный вопрос. Но в принципе любая работа должна трекаться и изменения должны иметь под собой основание. На крайняк можно зафигачить любой близкий по смыслу. Это лучше чем разбираться с тонной коммитов с "нечаянно" пропущенным номером таска.
Вот тут подробнее
https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks
В общем работает. И очень круто работает
Рекомендую.
Один недостаток - надо заставлять других разработчиков себе хук устанавливать локально.
Но для себя любимого просто огонь ![]()
сделай хук на сервере.
Есть два момента - чет пока не понял как на самом Bitbicket делать хуки - это получается надо будет отдельный сервер задействовать чтобы хостить скрипт (пока толком не гуглил)
Второй - дело в том что коммиты создаются локально и сервер о них узнает только во время push. Очень будет неприятно узнать что пуш не проходит потому что один из 100 коммитов имеет неправильный message. Я так кстати и не нашел как просто поменять message у коммита который не последний.
Rebase наше все!
Логично, зато разработчик будет в следующий раз думать.
Вот на это я надеюсь меньше всего ![]()