diff options
author | Daniel Baumann <daniel.baumann@open-infrastructure.net> | 2021-08-28 04:43:24 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@open-infrastructure.net> | 2021-08-28 09:20:08 +0000 |
commit | ff14e9779518c60d9fe2321945a17fdd39a6e2ff (patch) | |
tree | 34b8d48ec068f0373d52536b5bb1d265c8e7469e /git/bin/git-whoami | |
parent | Adding dehydrated tools. (diff) | |
download | service-tools-ff14e9779518c60d9fe2321945a17fdd39a6e2ff.tar.xz service-tools-ff14e9779518c60d9fe2321945a17fdd39a6e2ff.zip |
Adding git tools.
Signed-off-by: Daniel Baumann <daniel.baumann@open-infrastructure.net>
Diffstat (limited to 'git/bin/git-whoami')
-rwxr-xr-x | git/bin/git-whoami | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/git/bin/git-whoami b/git/bin/git-whoami new file mode 100755 index 0000000..9cab9bc --- /dev/null +++ b/git/bin/git-whoami @@ -0,0 +1,33 @@ +#!/bin/sh + +# git-whoami +# Author: Peter Eisentraut <peter@eisentraut.org> +# Created: 2011-10-27 +# License: WTFPL; see http://sam.zoy.org/wtfpl/ + +# exact logic in ident.c in git source tree + +set -e + +get_email() { + git config user.email || ( [ -n "$EMAIL" ] && echo "$EMAIL" ) || echo "$(id -nu)@$(hostname --fqdn)" +} + +get_name() { + git config user.name || getent passwd $(id -un) | cut -d : -f 5 | cut -d , -f 1 +} + +: ${GIT_AUTHOR_NAME=$(get_name)} +: ${GIT_COMMITTER_NAME=$(get_name)} +: ${GIT_AUTHOR_EMAIL=$(get_email)} +: ${GIT_COMMITTER_EMAIL=$(get_email)} + +author="$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL>" +commit="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL>" + +if [ "$author" = "$commit" ]; then + echo "$author" +else + echo "Author: $author" + echo "Commit: $commit" +fi |