
Necesito archivos creados por git checkout
comando para tener permisos personalizados.
Incluso con core.sharedrepository=0777
la configuración, git crea archivos de árbol de trabajo con permisos 0644. Pero quiero que sea al menos 0664 para que alguien del grupo pueda escribirles (también sería muy bueno especificar un grupo de propietarios personalizado)
La aplicación recursiva de chown/chmod puede funcionar, pero huele a último recurso y a desperdicio de recursos.
Respuesta1
No use solo git para administrar los permisos de archivos de un árbol instalado.
git es un solo usuario. No realiza un seguimiento de la propiedad de los archivos ni de los permisos suficientes para proteger un sistema de múltiples usuarios. Incluso si un árbol simple core.sharedrepository
con un usuario fuera suficiente para su caso de uso, tiene dificultades para lograr que haga lo que desea. ¿Posiblemente todavía esté usando el valor predeterminado de umask
?
Considere un formato de archivo real, ya sea un sistema de paquete de software o un archivo genérico como tar. Obtenga los permisos correctos en los scripts que generan los archivos.
O ejecutar un script de corrección de permisos no es tan malo. Si lo desea, verifique los permisos antes de cambiarlos para evitar cambios innecesarios en los metadatos del archivo.
Consideración no relacionada: si este árbol se va a actualizar, tenga en cuenta que git no sincroniza archivos, fusiona historiales. Entenderestas reglas de implementación de gitpara apreciar por qué las secuencias de comandos git pull
probablemente sean incorrectas.