svn diff: archivo marcado como tipo binario

82

Estoy haciendo un svn diffen uno de mis archivos y svn lo detecta como un tipo binario. El archivo es texto sin formato legible y me gustaría poder obtener una diferencia de este archivo. ¿Cómo le digo a SVN que este no es un archivo binario?

Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Charles Ma
fuente

Respuestas:

81

Puede usar la propiedad de Subversion svn: mime-type para establecer un mimetype explícito en el archivo:

svn propset svn: mime-type 'text / plain' path / to / file

Alternativamente, puede eliminar esta propiedad (ya que Subversion asume texto sin formato, de lo contrario) usando:

svn propdel svn: ruta de tipo mime / a / archivo
Michael Aaron Safyan
fuente
4
Pero, ¿por qué se marcó como binario en primer lugar? Tengo el mismo problema con muchos de mis archivos de origen y es un fastidio eliminar las propiedades cada vez.
angularsen
Parece que debería hacer otra pregunta ... y tal vez agregar un enlace aquí.
Eric Wilson
1
@EricWilson - preguntado: stackoverflow.com/questions/19499334/…
drzaus
¿Esto (cambiar el tipo de mime de un archivo) cambia la forma en que se ejecutan los archivos cuando alguien extrae una copia nueva de svn? En tal caso, creo que usar la opción --force solo para ver la diferencia tiene más sentido.
Rishi
@Rishi, no, no lo hace; hay una propiedad "svn: ejecutable" separada que determina si el archivo debe tener bits de permisos ejecutables.
Michael Aaron Safyan
114

Puede obtener diff incluso para un archivo marcado como binario usando --force.

svn diff --force path/to/file

Evgeny Remizov
fuente
5
esta es una respuesta mucho mejor para algo como application / json
Steven R. Loomis
2
@BrettZamir, pero eso se podría hacer con casi cualquier cosa que tenga una salida.
Entonio
1
@entonio: Sí, lo sé ... solo pensé que debería señalarlo ya que encontré este error al usar un cliente GUI y como no pude resolverlo dentro de él, por lo que pude ver, pensé que tal vez otros que no usan con frecuencia la línea de comando podría estar informada de esto.
Brett Zamir