From: Paul Eggert Date: Mon, 1 Feb 2016 16:29:28 +0000 (-0800) Subject: Chatter when autogen.sh changes Git configuration X-Git-Tag: emacs-25.0.91~130 X-Git-Url: https://code.delx.au/gnu-emacs/commitdiff_plain/d766ca8ff1e4ff1a30385508e1f456fad6bfe9f8 Chatter when autogen.sh changes Git configuration * autogen.sh (git_config): New function. Use it instead of ‘git config’. --- diff --git a/autogen.sh b/autogen.sh index 877bb8476f..42a779ea8c 100755 --- a/autogen.sh +++ b/autogen.sh @@ -220,17 +220,32 @@ echo timestamp > src/stamp-h.in || exit ## Configure Git, if using Git. if test -d .git && (git status -s) >/dev/null 2>&1; then + # Like 'git config NAME VALUE', but verbose on change and exit on failure. + + git_config () + { + name=$1 + value=$2 + ovalue=`git config --get "$name"` && test "$ovalue" = "$value" || { + echo "${Configuring_git}git config $name '$value'" + Configuring_git= + git config "$name" "$value" || exit + } + } + Configuring_git='Configuring git... +' + # Check hashes when transferring objects among repositories. - git config transfer.fsckObjects true || exit + git_config transfer.fsckObjects true # Configure 'git diff' hunk header format. - git config 'diff.elisp.xfuncname' \ - '^\(def[^[:space:]]+[[:space:]]+([^()[:space:]]+)' || exit - git config 'diff.texinfo.xfuncname' \ - '^@node[[:space:]]+([^,[:space:]][^,]+)' || exit + git_config 'diff.elisp.xfuncname' \ + '^\(def[^[:space:]]+[[:space:]]+([^()[:space:]]+)' + git_config 'diff.texinfo.xfuncname' \ + '^@node[[:space:]]+([^,[:space:]][^,]+)' # Install Git hooks.