He configurado Git y Gitolite, y en algún momento recuerdo haber visto una configuración de "umask" en uno de los archivos de configuración. ¿Establece esto los permisos para todos los archivos que sincronizo usando Git? Eso es exactamente lo que necesito. ¿Dónde puedo encontrarlo?Configuración de umask en Git/Gitolite
Respuesta
umask settings in Gitolite están ahí para cambiar umask para repos recientemente creados (y no sobre los archivos administrados en versiones por esos repos).
Ver gitolite.rc doc:
$REPO_UMASK
, octal, por defecto 0077El valor predeterminado
UMASK
que gitolite usos hace que todos los repositorios y su contenido tienenrwx------
permisos. Las personas que quieren ejecutar gitweb se dan cuenta de que esto no funcionará.La forma correcta de tratar con esto es dar a esta variable un valor como
0027
(tenga en cuenta la sintaxis: se requiere el 0 inicial), y luego hacer que el usuario que ejecuta el servidor web (Apache,www-data
, lo que sea) un miembro de el grupo 'git'.Si ya ha instalado gitolite, los archivos existentes deberán repararse manualmente (para una umask o
0027
, que seríachmod -R g+rX
). Esto se debe a queumask
solo afecta los permisos en los archivos recién creados, no los existentes.
Esta configuración es similar a la usada cuando se crea directamente un repositorio git (sin gitolite):
core.sharedRepository
Cuando
group
(otrue
), el repositorio está hecho compartible entre varios usuarios en un grupo (asegurándose de que todos los archivos y objetos puedan escribirse en grupo).
Cuandoall
(oworld
oeverybody
), el repositorio será legible por todos los usuarios, además de sergroup-shareable
.
Cuandoumask
(ofalse
), git utilizará los permisos informados porumask
.
Consulte también "How do I share a Git repository with multiple users on a machine?" para obtener más información.
Cuando tiene conflictos entre plataformas en relación con los permisos, también tiene la opción de "instruct git to ignore file permissions changes" (git config core.fileMode false
).
Actualización: Esta respuesta cubre gitolite 2. Con gitolite 3 la configuración cambió de $REPO_UMASK
a solo $UMASK
.
- 1. Nginx/php-fpm umask configuración
- 2. ¿Por qué usarías umask?
- 3. ¿Cómo establecer umask en todo el sistema?
- 4. ¿Puedo establecer umask para tempfile.NamedTemporaryFile en python?
- 5. php umask (0) ¿cuál es el propósito
- 6. ¿Configura umask para una cuenta sftp?
- 7. linux: ¿obteniendo umask de un proceso ya en ejecución?
- 8. ¿Cómo puedo configurar umask desde dentro de java?
- 9. Configuración de configuración faltante en el administrador de configuración
- 10. 'git clone' respeta umask, excepto el directorio de proyecto de nivel superior
- 11. ¿Por qué se invierte el argumento de os.umask()? (umask 0o000 hace chmod 0o777)
- 12. PHP mkdir() y fopen() no funciona - ¿problema de permisos? problema umask?
- 13. Configuración de configuración de análisis de código en TFSBuild.proj
- 14. Aplicación de sección de configuración no reconocida Configuración en NHibernate
- 15. Configuración de configuración de Azure y Microsoft.WindowsAzure.CloudConfigurationManager
- 16. Configuración de la configuración regional de Java
- 17. AvAudioRecorder configuración configuración ayuda
- 18. ¿Cómo pasar las credenciales en la configuración de configuración defaultProxy?
- 19. archivos de configuración en Silverlight
- 20. Configuración de correo en Web.config
- 21. Configuración de location.hash en frames
- 22. Configuración de ECommerce en ASP.NET
- 23. Configuración de embarcadero en Eclipse
- 24. Configuración de SLIME en emacs
- 25. Configuración de permisos en ZipArchive
- 26. Configuración de spines en matplotlibrc
- 27. configuración de OpenGL en Ubuntu
- 28. Configuración de borrosidad en ElasticSearch
- 29. Bits de configuración en C
- 30. Configuración de Mysql ++ en Linux