Один из способов сделать это:
- Создайте файл .mbox, который содержит все патчи с момента создания репо:
git format-patch --stdout --root > repo_history.mbox
- Отредактируйте файл
repo_history.mbox
, изменив все адреса электронной почты по своему усмотрению. Это может быть так просто, как perl -pi~ -e's/oldemail\@host\.org/newemail\@newhost\.com/gi' repo_history.mbox
- Создать новый репо:
mkdir ~/newrepo; cd ~/newrepo; git init
- Применить изменения предыдущего mbox к новому репо:
git am /path/to/repo_history.mbox
Я только что проверил это на своем репо, и кажется, что вышеупомянутое добилось цели.
Дайте мне знать, если вы хотите получить более подробную информацию.
Важно : Вы должны сделать это только за до того момента, когда вы когда-либо опубликуете этот репозиторий, и ни разу из него не вышли другие люди - я вижу, что ваш вопрос утверждает, что это уже, но это просто, чтобы подтвердить важность этого:)