No servidor remoto, tenho um gancho pós-recebimento configurado para fazer um check-out git do meu repositório:
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
Mas quando faço o envio da minha máquina local para o repositório git no servidor, recebo as seguintes mensagens de erro:
remote: error: unable to unlink old '<file>' (Permission denied)
Isso aparece várias vezes, uma mensagem de erro para quase todos os arquivos.
No entanto, eu tenho um arquivo README.txt que eu posso alterar usando o git, aqui estão suas permissões:
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
Mas outros arquivos com exatamente o mesmo proprietário e as mesmas permissões me dão esse erro.
Em outro repositório local para outro site, tenho os arquivos com o nome de usuário da minha máquina local como proprietário e, quando envio ao servidor remoto, ele respeita o proprietário dos arquivos e funciona como um encanto.
Obviamente, parece um erro relacionado a permissões, mas não consigo encontrar uma maneira de corrigi-lo, alguma sugestão?
sudo chmod -R g+w
as pastas culpadas.