Skip to content

Instantly share code, notes, and snippets.

@emyasnikov
Last active March 8, 2024 12:30
Show Gist options
  • Save emyasnikov/682bdb514d8644e95d1f3943fde2e618 to your computer and use it in GitHub Desktop.
Save emyasnikov/682bdb514d8644e95d1f3943fde2e618 to your computer and use it in GitHub Desktop.
Replace user name and email for all commits in Git
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="your-old-email@example.com"
CORRECT_NAME="your-name"
CORRECT_EMAIL="your-new-email@example.com"
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