O problema não é que você esteja enviando um commit empty .
Trata-se de enviar um commit diferente (um com um SHA1 diferente) do que o commit já enviado.
Isso é o que o git commit --amend
faz: modificou o último commit, não cria um novo.
Isso significa que você está empurrando uma história diferente do que a outra já clonada.
Se tiver certeza de que não será um problema, você precisa forçar o envio:
git push -f origin master
Você deveria ter feito:
git commit --allow-empty
Você teria criado um commit novo (vazio), que você poderia ter empurrado sem nenhum problema.