Para responder à sua pergunta:
If I'm to create a git user wich will be the owner of the main repos and also in charge of doing the commits, how do I prevent a developer from pushing a bad code?
A resposta não é criar um usuário git. Você pode controlar as permissões de acesso ao repositório remoto com usuários e grupos padrão do UNIX. Como o git envia um trabalho pelo SSH, desde que você possa executar o SSH no servidor que hospeda o repositório e tenha acesso de leitura ao repositório por meio de sua conta no servidor, é possível ler, clonar e extrair dos repositórios. Se você tiver permissões de gravação no repositório, também poderá enviar confirmações.