about summary refs log tree commit diff stats
path: root/pkgs/by-name/gi/git-cm/git-cm.sh
blob: 1eb4673065ca78120b2a3cad617d3d2e92c36b3c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/env dash

ROOT="$(git rev-parse --show-toplevel)"

# Take first line from previous commit
if [ -f "$ROOT/.git/COMMIT_EDITMSG" ]; then
    sed '1s/\(.*\)\((.*)\)\?\(:.*\)/\1\2: /;1p;d' "$ROOT/.git/COMMIT_EDITMSG" >"$ROOT/.git/COMMIT_TEMPLATE"
else
    printf "\n" >"$ROOT/.git/COMMIT_TEMPLATE"
fi
sed '1d' "$(git config commit.template)" >>"$ROOT/.git/COMMIT_TEMPLATE"

git commit --template "$ROOT/.git/COMMIT_TEMPLATE" "$@"

# vim: ft=sh