Pregunta

Tengo un wiki personal en el que tomo notas. Las páginas de la wiki están en un directorio de copia de trabajo de subversión, "páginas", y establecí sus permisos en 664, propiedad de www-data: www-data. Mi nombre de usuario se encuentra en " www-data " grupo, para que pueda registrar y manipular las páginas manualmente.

Por un tiempo, tuve un problema porque cada vez que ejecutaba un registro, los archivos eran de mi propiedad: www-data en lugar de www-data: www-data, y ya no podría cambiar el archivos wiki a través de mi interfaz web! Resolví el problema volteando el bit setgid en las '' páginas '' directorio, pero todavía estoy confundido sobre por qué sucedió esto en primer lugar:

Cada vez que verifico algo en subversion, parece que svn lo elimina y lo recrea. ¿Por qué? ¿Este comportamiento admite alguna funcionalidad que no conozco? ¿Hay alguna manera de cambiarlo?

¡Gracias!

¿Fue útil?

Solución

Establezca el " adhesivo " permisos de bit.

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

esto alentará la fase de creación de archivos de pago para heredar los permisos de directorios en lugar de cambiar a la persona que lo editó por última vez.

Editar : dow + s == setgid. Información dejada aquí para la posteridad y otros lectores.

Otros consejos

Creo que lo estás usando mal. Lo que podría hacer es tener todo en subversión y tener su copia de trabajo local separada del directorio www en el que desarrolla.

Luego, simplemente haga que la copia de trabajo www se actualice automáticamente (o se exporte si no desea que los directorios .svn en www foldeR) para el usuario www se realicen mediante un script (tal vez como post-commit hook) que luego configura los permisos en consecuencia.

El flujo de trabajo sería:

  1. editar archivos en / home / youruser / yourwiki-working-copy /
  2. hacer svn commit
    • el enlace posterior a la confirmación actualiza los archivos en / var / www / (o donde se encuentre el wiki)
  3. goto 1.

De esta manera, no tiene que preocuparse por los permisos e incluso puede hacer que más de una persona trabaje en el sitio web con todos los beneficios del control de versiones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top