From: Ian Jackson Date: Sun, 18 Mar 2012 11:15:28 +0000 (+0000) Subject: .git-revid from my trains.git X-Git-Tag: f0.3~42 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=81f44fcdf5da2fc1f25abd2ba4222cb21ee9f3f6;p=topbloke-formulae.git .git-revid from my trains.git --- diff --git a/.git-revid b/.git-revid new file mode 100755 index 0000000..74037ae --- /dev/null +++ b/.git-revid @@ -0,0 +1,39 @@ +#!/bin/bash +set -e +set -o pipefail + +kind="$1" + +desc=`git-describe --always HEAD` +log=`git-log -1 --pretty='format:%h %ci %s' HEAD` +set +e +git-diff --quiet HEAD +diffrc=$? +set -e +case $diffrc in +0) ;; +1) diffplus=+ ;; +*) exit $diffrc ;; +esac + +case "$1" in +'') maxlen=.71 + ;; +C) echo '#include "../.git-revid-autoversion.h"' + printf 'const char autoversion[]= \"' + log="${log//\\/\\\\}" + log="${log//\"/\\\"}" + maxlen='' + ;; +*) echo >&2 'bad usage for .git-revid' + exit 1 + ;; +esac + +printf "%${maxlen}s" "$desc$diffplus $log" + +case "$kind" in +'') printf '\n' ;; +C) echo '";' ;; +*) ;; +esac