Я бы порекомендовал сделать интерактивную перебазировку, выбрав коммиты, которые вы хотите, и те, которые вы хотите раздавить, с префиксом вместо пика.
Например, в вашем случае это будет выглядеть примерно так (число - это количество коммитов после HEAD, которое вы хотели бы перебазировать):
git rebase -i HEAD~3
Затем вы получите приглашение с коммитами и их сообщением, которое будет выглядеть примерно так:
pick <HASHID> Initial Commit
pick <HASHID> Login via mail instead of username
pick <HASHID> Add missing files
Просто измените выбор на сквош (и оставьте его в качестве коммита выбора).
После этого вы сможете переписать это сообщение коммита и вуаля, у вас есть 1 коммит, который вы делаете git push -f, если хотите.