11#! /bin/sh
22
33# defaults
4- PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER=" ^\s*\[[ \-\w]*\d\] "
4+ PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER=" ^\s*[ \-\w]*\d: "
55PLACEHOLDER_REGEX_BRANCH_ISSUE_NUMBER=" [.]*\/([\-\w]*?\-\d+)"
66PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES=" (Merge\sbranch\s\'|\#\sRebase\s|This\sreverts\scommit\s)"
77PLACEHOLDER_LOGGING_VERBOSE=" true"
8-
9- GITHUB_SCRIPT_URL=" https://raw.githubusercontent.com/janniks/prepare-commit-msg/master/scripts/prepare-commit-msg"
8+ PLACEHOLDER_NEW_COMMIT_MESSAGE=" #{issue_number.upcase}: #{original_commit_message.gsub(/(\s[[:punct:]])+$/, '')}"
109
1110PATH_GIT_GLOBAL=" ${HOME} /.git-template/"
1211PATH_GIT_LOCAL=" ./.git/"
@@ -125,7 +124,7 @@ if [ "$OPTION_GLOBAL_TEMPLATE" = true ]; then
125124 printf -- " - A global \'${BLUE}${HOOK_NAME}${RESET} \' git hook already exists. ${RED} Aborting...${RESET} \n\n"
126125 exit
127126 fi
128-
127+
129128 HOOK_FILE=" ${PATH_GIT_GLOBAL}${HOOK_DIR}${HOOK_NAME} "
130129
131130 printf -- " - Setting global git-template...\n"
@@ -140,8 +139,10 @@ else
140139 HOOK_FILE=" ${PATH_GIT_LOCAL}${HOOK_DIR}${HOOK_NAME} "
141140fi
142141
143- printf -- " - Downloading git hook...\n"
144- curl -s " $GITHUB_SCRIPT_URL " > " $HOOK_FILE "
142+ printf -- " - Creating git hook file\n"
143+
144+ BASEDIR=$( dirname $0 )
145+ cat " ${BASEDIR} /prepare-commit-msg" > " $HOOK_FILE "
145146
146147printf -- " - Replacing placeholders...\n"
147148PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER=$( printf -- " $PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER " | sed ' s/\\/\\\\/g' )
@@ -153,11 +154,13 @@ PLACEHOLDER_REGEX_BRANCH_ISSUE_NUMBER=$(printf -- "$PLACEHOLDER_REGEX_BRANCH_ISS
153154PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES=$( printf -- " $PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES " | sed ' s/\\/\\\\/g' )
154155printf -v PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES " %q" " $PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES "
155156PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES=$( printf -- " $PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES " | sed ' s/\//\\\//g' )
157+ PLACEHOLDER_NEW_COMMIT_MESSAGE=$( printf -- " $PLACEHOLDER_NEW_COMMIT_MESSAGE " | sed ' s/\//\\\//g' )
156158
157159sed -i ' ' " s/PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER/\/${PLACEHOLDER_REGEX_COMMIT_ISSUE_NUMBER} \//g" " $HOOK_FILE "
158160sed -i ' ' " s/PLACEHOLDER_REGEX_BRANCH_ISSUE_NUMBER/\/${PLACEHOLDER_REGEX_BRANCH_ISSUE_NUMBER} \//g" " $HOOK_FILE "
159161sed -i ' ' " s/PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES/\/${PLACEHOLDER_REGEX_GIT_COMMIT_MESSAGES} \//g" " $HOOK_FILE "
160162sed -i ' ' " s/PLACEHOLDER_LOGGING_VERBOSE/${PLACEHOLDER_LOGGING_VERBOSE} /g" " $HOOK_FILE "
163+ sed -i ' ' " s/PLACEHOLDER_NEW_COMMIT_MESSAGE/${PLACEHOLDER_NEW_COMMIT_MESSAGE} /g" " $HOOK_FILE "
161164
162165printf -- " - Requesting permission to execute git hook...\n"
163166chmod a+x " $HOOK_FILE "
0 commit comments