Вариантов несколько:
1) squash всех нежеланных комитов
2) Через git rebase -i меняете сообщение каждого неудачного коммита.
Оба способа подразумевают перепись истории, что не очень хорошо, но если репозиторий только ваш и работаете над ним только вы, то сойдет.
UPD. Всегда, когда меняете историю, сохраняйте состояние до изменений в отдельную бранч:
git checkout -b tmp
git checkout <your branch>