Найти все коммиты от одного автора и сохранить их хэш в файл:
git log --author=<author> --format=%H > /tmp/commit-by-x
Создайте новую ветку, которая не содержит коммит данного автора, поскольку вы не хотите применять их дважды. Для этого вы можете создать новую пустую ветку:
git checkout --orphan commits-by-x
Cherry-pick все коммиты этого автора (от самых старых до самых новых):
tac /tmp/commit-by-x | while read sha; do git cherry-pick ${sha}; done
Очевидно, что если вы хотите, чтобы это было успешно, изменения, внесенные автором-x, должны быть очень локализованы.