From: Eugene Syromyatnikov Date: Thu, 10 Aug 2017 18:39:29 +0000 (+0200) Subject: Add script for generating date of the last commit for specific file X-Git-Tag: v4.19~152 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=189320c6c752004d8744933206fe28c992381875;p=strace Add script for generating date of the last commit for specific file * file-date-gen: New auxiliary script. --- diff --git a/file-date-gen b/file-date-gen new file mode 100755 index 00000000..610c2810 --- /dev/null +++ b/file-date-gen @@ -0,0 +1,35 @@ +#! /bin/sh + +if [ "$1" = "-f" ]; then + shift + DATE_FORMAT="$1" + shift +fi + +: ${FILE:=$1} +: ${DATE_FILE:=$(dirname "$FILE")/.$(basename "${FILE}").date} +: ${DEFAULT_DATE:=$2} +: ${DATE_FORMAT:=%Y-%m-%d} + +date= + +[ -n "${FILE}" ] || { + echo >&2 "$0 $(dirname "$0")/file [$(dirname "$0")/file.date [DEFAULT_DATE]]" + exit 1 +} + +[ -f "${DATE_FILE}" ] && date="$(cat "${DATE_FILE}")" + +[ -n "${date}" ] || + date="$(git log -n 1 --format=format:%cD --no-patch "${FILE}")" + +[ -n "${date}" ] || year="${DEFAULT_DATE}" + +[ -n "${date}" ] || date="$(date -u)" + +[ -n "${date}" ] || { + echo >&2 'Undefined date.' + exit 1 +} + +exec printf "%s" $(date "+${DATE_FORMAT}" -d "${date}")