Por que recebo "erro: falha ao enviar algumas referências"?

Eu tenho um repositório remoto do git e um local com o qual trabalho. Sempre que faço alterações localmente, empurro-as para o controle remoto. Em algum momento, faço um "git commit" no controle remoto para armazenar as alterações nos arquivos remoto

Eu não edito o repositório remoto diretamente. Acabei de confirmar as alterações. E eu sou um desenvolvedor único, ninguém mais trabalha nesses repositórios.

Por que recebo um erro que, pelo que sei, significa que tenho que puxar primeir

Não quero puxar porque os arquivos de repositórios remotos estão desatualizados e as alterações locais serão perdidas. Isso é realmente irritante, por que isso acontece? E como posso corrigir sem precisar puxar ou recriar o repositório? (como você pode ver, é como um tipo de subversão do estilo de controle de versão aqui)

EDIT - O erro:

To ssh://...
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'ssh://...'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again.  See the
'Note about fast-forwards' section of 'git push --help' for details.

questionAnswers(4)

yourAnswerToTheQuestion