git filter-branch
- это то, что вы ищете.Это не для слабонервных, однако, и потенциально изменит все коммиты вашего репозитория, что плохо, если вы уже опубликовали репозиторий.
git filter-branch --env-filter 'if [ "$GIT_AUTHOR_EMAIL" == "old@email"]; then export GIT_AUTHOR_EMAIL="new@email"; fi' -- --all
Это должно переписатьистория всех доступных ссылок (следовательно, --all
), заменяя адреса электронной почты всех авторов коммитов, которые соответствуют «old @ email», на «new @ email».