批量修改git提交名

 

批量修改git已经提交的commit的用户名和邮箱

#!/bin/sh

git filter-branch -f --env-filter '

OLD_EMAIL="old_email"
CORRECT_NAME="new_name"
CORRECT_EMAIL="new_email"

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