Como faço para forçar o Git a usar o proprietário e as permissões da pasta anexa?
Pergunta
Tenho notado que, quando faço alterações em meu servidor, ele adiciona automaticamente acesso de gravação em grupo aos arquivos que são alterados.No entanto, como estou usando o suPHP, isso causa um erro 500, preciso desconsiderar quaisquer permissões e propriedade que o repositório Git possa ter e substituí-lo pelas permissões adequadas que a própria pasta possui.
EDITAR:suphp requer permissões máximas de 644 para arquivos e 755 para diretórios, para ajudar a proteger os arquivos do usuário contra modificações.É um patch para PHP que funciona com Suhosin.
Eu trabalho com um ambiente localhost, envio para o teste e é aí que recebo os erros porque o teste é um clone do ambiente de produção.
Solução 2
Acabei usando o gancho post-merge e executando um chmod -R g-w .
em um script bash.Isso ajudou a garantir que ele nunca adicionasse nenhum outro arquivo de gravação que pudesse causar erro 500 no servidor.
Outras dicas
Eu acho que isso é uma honra umask
.Então basta configurá-lo para 0022
ou mais rigoroso antes de usar qualquer git
comando, e você deve ficar bem.
$ umask 0022
$ git checkout master