Cómo decirle explícitamente a SVN que trate un archivo como texto, no binario


Tengo una serie de archivos que he comprobado en SVN sin haber configurado sus tipos Mime correctamente. SVN inicialmente los clasificó como binarios.

Desde entonces he establecido su tipo Mime en SVN a través de propset a "text/plain; charset=UTF-8" y I'vc se aseguró de que todos los archivos estén firmados con UTF-8. Cuando hago 'svn blame filename', svn dice que el archivo es binario y no me da una salida explícita de tipo blame.

¿Alguna sugerencia sobre cómo persuadir a SVN de que estos son realmente archivos de texto?

Author: DWright, 2009-01-19

5 answers

Establecer la propiedad svn: mime-type a solo "text / plain"ayuda:

svn propset svn:mime-type text/plain build.xml
svn commit build.xml

Además, puede forzar a Subversion a tratar un archivo como texto al culpar:

svn blame file/to/blame --force
 49
Author: Stefan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-20 14:29:50

Tuve el mismo problema: revisé varios archivos utf8 (codificación nativa para Linux), algunos de los cuales fueron tomados erróneamente como binarios y mostraban "(bin)". No profundicé en cómo ocurrió el error, pero comprobé lo que había allí...

$ svn propget svn:mime-type *

...notó que los archivos de texto correctamente registrados no tenían ninguna propiedad svn: mime, y simplemente eliminó la propiedad svn:mime-type de los archivos de texto incorrectamente mal habilitados binarios.

$ svn propdel svn:mime-type [mislabeled-text-file...]
$ svn ci -m "zap binary mime-types" [mislabeled-text-file...]

Esto parece haber funcionado sin ningún efecto negativo. Advertencia usuario: No tengo idea de cómo se comportaría Windows en este caso, aunque esto es fácilmente comprobable.

 2
Author: smaines,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-09-30 00:58:09

Esta respuesta tiene la misma idea, pero al revés. Las citas en el mismo siguen siendo relevantes para su consulta.

 1
Author: Eddie Parker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:10:23

Después de haber agregado un archivo al repositorio, probablemente también necesite establecer el tipo en el REPOSITORIO. Utilice la URL al repositorio en lugar de la ruta a la copia de trabajo en el comando propset.

 0
Author: Jim P.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-09-28 20:23:34

Parece que las manipulaciones con tipo mime no convencen a svn de tratar un archivo como un texto. Pero si se estableció el tipo mime adecuado antes de la primera confirmación, entonces svn tratará el archivo correctamente. Por ejemplo, svn agrega eclipse .proyecto y .classpath como aplicación / xml y los trata como bin. Pero si antes de la primera confirmación lo cambias a texto / xml, se tratarán como texto.

 0
Author: andrei,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-24 13:24:31