2010-06-10 15 views
5

Subversion establece la propiedad svn:mime-type de un archivo binario en application/octet-stream de forma predeterminada.¿Cambia el tipo mime predeterminado de Subversion para archivos binarios que no tienen una extensión específica?

Necesito cambiar este valor predeterminado a algún otro tipo mime. Cuando importo por primera vez este código, me gustaría que Subversion establezca mime-type a la que elijo.

La razón es que mi código base contiene código en archivos binarios (formato propietario), y tengo las aplicaciones necesarias para emular diff y diff3 para estos. Pero Subversion no me deja debido a su tipo de mime predeterminado.

Tenga en cuenta: No hay una extensión predeterminada (* .jar, * .py, etc.) para estos archivos de código. Algunos archivos ni siquiera tienen una extensión. Por lo tanto, no es posible configurar el tipo MIME por extensión de archivo.

Respuesta

4

--- Editado después de la respuesta de que no hay extensión predeterminada de estos archivos ---

Si no hay ninguna extensión predeterminada de estos archivos, puede usar la directiva alféizar [auto-props] en el cliente, en virtud de unos pocos circunstancias.

Si el archivo tiene un nombre de archivo reservado conocido (como Makefile), entonces usted puede poner en una directiva que coincide con todo el nombre del archivo, como

Makefile = svn:mime-type=text/x-makefile 

En caso de que sólo tienen unos pocos nombres de archivo para cubrir , podría simplemente agregar las directivas para cada uno de los nombres de archivo deseados.

El * no se limita sólo a la coincidencia de extensión, los patrones de nombre de archivo partido de directivas, por lo que también podría escribir una directiva como

Image* = svn:mime-type=image/png 

Por último, si los archivos no siguen un patrón de nomenclatura que puede ser explícitamente reservado para su tipo de mimo, entonces será mejor que escriba un pequeño script para etiquetar los archivos y recordar ejecutarlo ocasionalmente.

Tenga en cuenta que cambiar los valores predeterminados del cliente cambiará el comportamiento del cliente para acceder a todos los repositorios SVN, por lo que es una buena idea incluir solo opciones que probablemente se aplicarían a cada repositorio que pretenda usar.

--- --- Post original sigue

El svn: mime-type es una propiedad. Para las entradas existentes, puede editarlo con svn propedit

Para cambiar predeterminado del tipo MIME, en el lado del cliente, puede editar el archivo SVN config para incluir una directiva en la sección [auto-props] del archivo de configuración.

*.png = svn:mime-type=image/png 

añadiría automáticamente un svn:mime-type de image/png a cualquier nuevo archivo creado que terminó en *.png

No estoy al tanto de cualquier técnica en la que esto se puede hacer del lado del servidor, a menos que usted quiere escribir una script en uno de los desencadenadores precompromisos para agregar la propiedad antes de que el cambio se confirme en el repositorio.

+0

No hay extensión predeterminada para este código.Algunos archivos ni siquiera tienen una extensión. Por lo tanto, no es posible configurar el tipo MIME por extensión de archivo. Necesito cambiar el tipo de mime predeterminado para archivos binarios a otra cosa. – lamcro

Cuestiones relacionadas