Jack Polgar

Changing a Git Author Name and Email

Every time I either reinstall my OS or switch to another computer that I haven't configured Git on, I forget to set my name and email.

Meaning every single commit has the "unknown" name and "Jack@.(none)" email.

However it's not the end of the world and I have found a way to fix these problems.

git filter-branch --env-filter '

an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"

if [ "$GIT_COMMITTER_EMAIL" = "[email protected]" ]
then
    cn="New Name"
    cm="New Email"
fi
if [ "$GIT_AUTHOR_EMAIL" = "[email protected]" ]
then
    an="New Name"
    am="New Email"
fi

export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
'