Pergunta

Eu tenho um wiki pessoal que eu tomar notas diante. As páginas do Wiki estão em um diretório de cópia de subversão trabalhando, "páginas", e eu definir suas permissões para 664, de propriedade de www-data: www-data. Meu nome de usuário está no grupo "www-data", para que eu possa check-in e mexer com as páginas manualmente.

Por um tempo, eu tive um problema porque cada vez que eu corri um check-in, os arquivos seria de propriedade de mim: www-data, em vez de www-data: www-data, e eu não seria mais capaz de mudar o wiki arquivos através da minha interface web! Eu resolvi o problema lançando o bit setgid no diretório "páginas", mas ainda estou confuso sobre o porquê isso aconteceu, em primeiro lugar:

Toda vez que eu verificar algo em subversão, ele aparece como se svn exclui-lo e recriá-la. Por quê? Será que este comportamento apoiar algumas funcionalidades que eu não estou ciente de? Existe uma maneira de mudar isso?

Obrigado!

Foi útil?

Solução

Definir as permissões "pegajosas" bit.

find -type d -exec chgrp www-data {} + 
find -type d -exec chmod g+s {} + 

isso vai incentivar fase de criação do arquivo de check-out para herdar as permissões diretórios em vez de mudar para a pessoa a quem última editou.

Editar : dow + s == setgid. Informações deixou aqui para a posteridade e outros leitores.

Outras dicas

Eu acho que você está usando errado. O que você poderia fazer ainda é ter tudo em subversão e tem copiar o seu trabalho local separado do diretório www que você desenvolver em.

Em seguida, basta ter o www working-copy-auto atualizado (ou exportados se você não quiser que os diretórios .svn na pasta www) para o usuário www por algum script (talvez como gancho post-commit ), que, em seguida, setups permissões em conformidade <. / p>

O fluxo de trabalho seria:

  1. editar arquivos em / home / youruser / yourwiki-working-copy /
  2. não svn
    • post-commit gancho atualiza os arquivos em / var / www / (ou onde quer que o wiki está localizado)
  3. Goto 1.

Desta forma, você não precisa se preocupar com permissões e você ainda pode ter um trabalho mais de uma pessoa no site com todos os benefícios de controle de versão.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top