O problema não é o acesso de gravação em / var / repo - Acredito que, pelos erros que você copiou / colou, isso está configurado corretamente e provavelmente sempre foi.
O problema é a falta de permissões de gravação em / var / www.
Ao seguir as instruções que você vinculou ao que você configurou, há um script que leva automaticamente os arquivos que você envia para o repositório git no servidor e os publica em / var / www. Esta é uma abordagem inteligente na minha opinião, mas esse script (que vive no arquivo / var / repo / hooks / post-receive) está sendo executado como o mesmo que envia para o repositório git. Esse usuário não parece ter permissão para gravar em / var / www
Supondo que você já tenha seguido as etapas da resposta anterior, esses dois comandos adicionais devem corrigir as coisas:
chown -R root:git-users /var/www/
chmod -R g+rw /var/www/