Возможно ли массовое переименование двух или более адресов электронной почты одним проходом git filter-branch
?
Я попытался адаптировать код из этого ответа, просто дублируя if..fi clause
:
git filter-branch --commit-filter '
if [ "$GIT_COMMITTER_NAME" = "<Old Name 1>" ];
then
GIT_COMMITTER_NAME="<New Name 1>";
GIT_AUTHOR_NAME="<New Name 1>";
GIT_COMMITTER_EMAIL="<New Email 1>";
GIT_AUTHOR_EMAIL="<New Email 1>";
git commit-tree "[email protected]";
else
git commit-tree "[email protected]";
fi
if [ "$GIT_COMMITTER_NAME" = "<Old Name 2>" ];
then
GIT_COMMITTER_NAME="<New Name 2>";
GIT_AUTHOR_NAME="<New Name 2>";
GIT_COMMITTER_EMAIL="<New Email 2>";
GIT_AUTHOR_EMAIL="<New Email 2>";
git commit-tree "[email protected]";
else
git commit-tree "[email protected]";
fi' HEAD
Но это дало мне ошибки во время фильтрации-ветки, которые выглядели так:
error: duplicate parent bc8f9924c33558a275b8f694969529cf56232c80 ignored
И тогда история ветвей была запутана: