Skip to content

Instantly share code, notes, and snippets.

@pasdam
Created January 5, 2020 01:31
Show Gist options
  • Save pasdam/3b035e2c3904dd2461ab7d925d43e939 to your computer and use it in GitHub Desktop.
Save pasdam/3b035e2c3904dd2461ab7d925d43e939 to your computer and use it in GitHub Desktop.
Bash script to replace email in git commit history
#!/bin/sh
git filter-branch -f --env-filter '
# Configuration values
OLD_EMAIL="<old_email_to_replace>"
CORRECT_NAME="pasdam"
CORRECT_EMAIL="[email protected]"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment