33 lines
857 B
Bash
Executable file
33 lines
857 B
Bash
Executable file
#!/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="${GIT_AUTHOR_NAME:-$(get_name)}"
|
|
GIT_AUTHOR_EMAIL="${GIT_AUTHOR_EMAIL:-$(get_email)}"
|
|
GIT_COMMITTER_NAME="${GIT_COMMITER_NAME:-$(get_name)}"
|
|
GIT_COMMITTER_EMAIL="${GIT_COMMITER_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
|