У меня есть репозиторий git, где я пока единственный коммиттер, и это уже было опубликовано на github. Я обнаружил, что некоторые коммиты, сделанные с другого компьютера, содержат неверную информацию об авторе. Моя идея состояла в том, чтобы удалить репозиторий из github, переписать историю и переиздать ее как новую.
Для этой цели я создал простой скрипт:
git filter-branch --commit-filter '
GIT_COMMITTER_NAME="Author Name";
GIT_AUTHOR_NAME="Author Name";
GIT_COMMITTER_EMAIL="email";
GIT_AUTHOR_EMAIL="email";
git commit-tree "$@";
' HEAD
, который должен переименовать все коммиты. Проблема в том, что git отвечает
Cannot rewrite branch(es) with a dirty working directory.
но git-статус предоставляет мне
# On branch master
nothing to commit (working directory clean)
Есть идеи о том, что мне не хватает? Будем благодарны за любые предложения о том, как переименовать все коммиты без потери истории.