Created
February 12, 2019 11:33
-
-
Save welly/0b80838dd8e280d3a8dfccc74ed7fe6a to your computer and use it in GitHub Desktop.
Prepend git commit messages with branch name
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# This way you can customize which branches should be skipped when | |
# prepending commit message. | |
if [ -z "$BRANCHES_TO_SKIP" ]; then | |
BRANCHES_TO_SKIP=(master) | |
fi | |
BRANCH_NAME=$(git symbolic-ref --short HEAD) | |
BRANCH_NAME="${BRANCH_NAME##*/}" | |
BRANCH_EXCLUDED=$(printf "%s\n" "${BRANCHES_TO_SKIP[@]}" | grep -c "^$BRANCH_NAME$") | |
BRANCH_IN_COMMIT=$(grep -c "\[$BRANCH_NAME\]" $1) | |
if [ -n "$BRANCH_NAME" ] && ! [[ $BRANCH_EXCLUDED -eq 1 ]] && ! [[ $BRANCH_IN_COMMIT -ge 1 ]]; then | |
sed -i.bak -e "1s/^/[$BRANCH_NAME] /" $1 | |
fi |
Author
welly
commented
Feb 12, 2019
•
- Create a directory named ~/.git_template/hooks
- Copy gist into that directory
- chmod +X ~/.git_template/hooks/prepare-commit-msg
- git config --global init.templatedir "~/.git_template"
- Tada!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment