Files
MuditaOS/config/prepare-commit-msg
T
Wojtek Cichoń 30c70d53cf [EGD-4658] Change 'dev workflow' article (#1130)
Changed 'Development workflow' article regarding how to
write commit messages and introduced a template for commit messages.
2020-12-11 09:36:45 +01:00

33 lines
928 B
Bash
Executable File

#!/bin/bash
#source: https://medium.com/better-programming/how-to-automatically-add-the-ticket-number-in-git-commit-message-bda5426ded05
FILE=$1
MESSAGE=$(cat $FILE)
BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD)
TITLE_TAG="<Title>"
BRANCH_REGEXP="^(\w+/)?(\w+[-_])?([0-9]+)[-_](.*)$"
if [[ ${BRANCH_NAME} =~ ${BRANCH_REGEXP} ]]; then
TICKET="[${BASH_REMATCH[2]}${BASH_REMATCH[3]}]"
MESSAGE_TEXT="${BASH_REMATCH[4]//[-_]/ }"
if [[ ${MESSAGE} == "${TICKET}"* ]]; then
exit 0
fi
NEW_TITLE="${TICKET} ${MESSAGE_TEXT}"
echo "FILE:$FILE"
echo "TITLE_TAG:$TITLE_TAG"
FROM_TEMPLATE=$(cat ${FILE} | grep "${TITLE_TAG}")
echo "FROM_TEMPLATE: '${FROM_TEMPLATE}'"
if [[ -n $( cat $FILE | grep "${TITLE_TAG}" ) ]]; then
sed -i "s:${TITLE_TAG}:${NEW_TITLE}:" $FILE
else
echo -e "$TICKET $MESSAGE_TEXT \n $MESSAGE" > $FILE
fi
else
echo "$MESSAGE" > $FILE
fi