Asegúrese de que mime-type esté configurado correctamente en Subversion cuando falta como propiedad?

Actualmente tenemos el problema de que a muchos files almacenados en Subversion les falta el tipo MIME. Dependiendo del browser que esté utilizando, al navegar por un directory de Subversion y onclick en un enlace, verá el text, por ejemplo, de un PDF y no el PDF procesado en Acrobat Reader.

La solución obvia es establecer la propiedad en Subversion, en este ejemplo, configurar svn:mime-type en application/pdf y establecer la sección relevante en autopropulsados ​​en el file de configuration del cliente de Subversion. Pero muchos de nuestros usuarios no entienden eso, y no controlamos todas sus configuraciones, por lo que se agregarán una y otra vez files a los repositorys donde faltará el tipo de mime correcto.

¿Cuáles son las opciones para corregir esto y cuáles son los inconvenientes de su uso?

Su mejor opción es instalar un script de enlace precompromiso que verifique el tipo de mime apropiado en todos los files en un compromiso entrante, y rechace el compromiso si no cumple con sus requisitos (proporcionando un post informativo al usuario diciéndoles por qué no pueden comprometerse).

Eventualmente, los usuarios (los que se preocupan por trabajar de manera eficiente, de todos modos) deben get la pista y ocuparse de agregar la propiedad ellos mismos, o preguntarle cómo configurar su sistema para que no tenga que hacerlo.

Es posible que vea sugerencias que equivalen a modificar la confirmación durante el tránsito. Ingnóralos. Son peligrosos y darán lugar a confusión para los usuarios. También puede ver recomendaciones para tener una secuencia de commands gancho post-commit para realizar inmediatamente una segunda confirmación utilizando una copy de trabajo del lado del server. Esto es less peligroso, pero podría conducir a una condición de carrera. También disminuirá la velocidad de todos y hará que la copy de trabajo del usuario que realiza la tarea se desactualice inmediatamente, lo que será increíblemente molesto.

Si usa Apache HTTP Server para servir sus repositorys de Subversion, entonces debe configurar los types de medios pnetworkingeterminados con la ayuda del module mod_mime. Ver documentos en el Módulo Apache mod_mime .

En general, debe agregar las siguientes cadenas a la configuration de Apache y señalar TypesConfig a su file mime.types .

 LoadModule mime_module bin/mod_mime.so TypesConfig <path-to-mime.types-file> 

Perdón por responder mi propia pregunta, pero la receta que funcionó para nosotros la encontré en https://serverfault.com/questions/451500/is-it-possible-for-the-subversion-apache-module-to-serve-html -files-con-un-html

Entonces, en caso de que quiera llegar a algo similar, intente eso.