From 538ac08e3ec6de7712f70b7f18a4944dcac226f8 Mon Sep 17 00:00:00 2001 From: Nulo Date: Wed, 8 Feb 2023 18:05:50 -0300 Subject: [PATCH] autogenerar mensaje de commit --- .githooks/prepare-commit-msg | 48 ++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100755 .githooks/prepare-commit-msg diff --git a/.githooks/prepare-commit-msg b/.githooks/prepare-commit-msg new file mode 100755 index 0000000..68ac058 --- /dev/null +++ b/.githooks/prepare-commit-msg @@ -0,0 +1,48 @@ +#!/bin/sh +# +# This hook adds prefix "
: " to the commit message when +# committing changes of a single article. +# +# Robado de alpine/aports +# +MSG_FILE="$1" +SOURCE="$2" + +longest_common_prefix() { + awk -F/ ' + (NR == 1) { split($0, prefix); prefix_len = NF } + (NR > 1) { + for (i = 1; i <= prefix_len; i++) { + if (prefix[i] != $i) { + prefix_len = i - 1; break + } + } + } + (prefix_len == 0) { exit } + END { + res = prefix[1] + for (i = 2; i <= prefix_len; i++) { + res = res FS prefix[i] + } + print(res) + }' +} + +prepend_msg() { + local prefix="$1" + + printf '%s\n%s\n' "$prefix" "$(cat "$MSG_FILE")" > "$MSG_FILE" +} + + +# Do nothing if message has been given using -m, template, merge etc. +[ -z "$SOURCE" ] || exit 0 + +lcp=$(git diff-index --name-only --cached HEAD | longest_common_prefix) +echo "$lcp" + +case "$lcp" in + [^.]*) prepend_msg "${lcp%.*}: ";; +esac + +exit 0