Git : réécrire le nom et l'email d'un auteur dans l'historique des commits

Boris HUISGEN
|
$ git filter-branch --env-filter '
oldname="(old name)"
oldemail="(old email)"
newname="(new name)"
newemail="(new email)"
[ "$GIT_AUTHOR_EMAIL" = "$oldemail" ] && GIT_AUTHOR_EMAIL="$newemail"
[ "$GIT_COMMITTER_EMAIL" = "$oldemail" ] && GIT_COMMITTER_EMAIL="$newemail"
[ "$GIT_AUTHOR_NAME" = "$oldname" ] && GIT_AUTHOR_NAME="$newname"
[ "$GIT_COMMITTER_NAME" = "$oldname" ] && GIT_COMMITTER_NAME="$newname"
' HEAD
Méthode un peu plus radicale :
$ git filter-branch -f --msg-filter "sed 's/(old email)/(new email)/'" 61c854b660f86fd25d5c86e29d733861858af2cf..HEAD