2012-07-02 11 views
51

empecé a recibir el siguiente mensaje de error cada vez que use SVN en mi servidor:SVN no puede establecer LC_CTYPE local

svn: warning: cannot set LC_CTYPE locale 
svn: warning: environment variable LC_CTYPE is UTF-8 
svn: warning: please check that your locale name is correct 

mi suposición es que puede haber algo mal con mi cliente SVN (el uso de versiones de la aplicación) y el servidor svn ...

¿Cómo puedo hacer que esta advertencia desaparezca para siempre del servidor cada vez que uso dichos comandos?

Respuesta

53

comprobar la salida de

locale -a 

Si la configuración regional que SVN se queja de que no está instalado, puede instalarlo.

Es posible que tenga que hacer:

sudo apt-get install language-pack-en-base 

seguido de uno de (dependiendo del error exacto desde SVN, el suyo es el primer caso):

sudo locale-gen UTF-8 
sudo locale-gen en_GB.UTF-8 
sudo locale-gen en_US.UTF-8 

Alternativamente, como se escribe Ankit:

export LC_ALL=C 

puede funcionar (en su sesión actual, o en su .profile).

+0

Para aquellos en Solaris (lo siento): Usted querrá configurar el adm local y luego agregue la configuración regional correcta (p. ej., localeadm -l -v; localeadm -a en_US.UTF-8 -d/cdrom/sol_10_811_x86) http://www.netlinxinc.com/index.php?option=com_content&view=article&id = 50: .. –

+2

en sistemas debian (y tal vez también Ubuntu), locale-gen no toma argumentos, pero genera lo que está activado en /etc/locale.gen. Además, en un servidor corporativo Univention basado en Deian, este archivo es generado por el registro de configuración, por lo que los valores para las configuraciones locales deseadas/necesarias/faltantes deben establecerse así: ucr set locale = 'de_DE.UTF-8 : UTF-8 en_US.UTF-8: UTF-8 ' – Henning

+0

Para mí, al agregar "env LC_ALL = C" a /usr/share/applications/jetbrains-idea.desktop se solucionó. – Smile4ever

20

Si desea corregir esto, configure manualmente la variable "LC_ALL".

para hacerlo permanente acaba de editar el archivo “/ etc/environment” y añada la línea:

LC_ALL=C 

Guarde el archivo y salga del editor. Para que se aplique debe desconectarse de la sesión de shell actual. La próxima vez que inicie sesión, el problema con SVN desaparecerá.

12

La configuración LC_ALL y LANG no funcionó, pero LC_CTYPE sí.

LC_CTYPE=en_US.UTF-8 
0

Encontré que la combinación de varias respuestas auditivas produce un comportamiento correcto.

  1. Debemos instalar soporte para la configuración regional correcta (LOCALADM para sunos, locale-gen para Linux)
  2. Debemos establecer LC_ALL a la configuración regional apropiada

Esto depende de qué tipo de nombres de archivo tienes en tu árbol fuente. Por ejemplo, tengo inglés, hebreo y árabe. en_US.UTF-8 funciona para mí "C" en sí mismo llevó a archivos que no pude actualizar.

41

Aunque el establecimiento LC_CTYPE a un valor vacío funcionó para mí, la razón subyacente era que el Terminal aplicación en mi Mac se ponía los locales en el arranque, incluso cuando ssh a otro sistema.

Este puede ser fijado en la Terminal> Preferencias:

  • Seleccione "Perfiles" y seleccione “Opciones avanzadas” de subpestañas
  • Desactive la opción "Establecer las variables de entorno de localización puesta en marcha"
+3

Creo que esta es una forma adecuada de resolver el problema en OS X. – Pavlo

+0

Sí, esto me lo arregló usando Mavericks –

+1

. Hay otras dos alternativas para resolver esto en Mac OSX: http://www.cyberciti.biz/faq/os-x-terminal-bash-warning-setlocale-lc_ctype- can not-change-locale/ –

1

Esto se debe a que no se han generado las configuraciones regionales correctas en su sistema.

líneas sin comentar que desea apoyar en /etc/locale.gen

Por ejemplo:

en_GB.UTF-8 UTF-8 
en_US.UTF-8 UTF-8 
ru_RU.UTF-8 UTF-8 

y luego ejecutar sudo locale-gen

+0

Idealmente, me gustaría decirle a Subversion que use en_AU.UTF-8, pero esta fue la mejor opción (IMO). –

2

comentando la líneas con SendEnv LANG LC_* en/etc/ssh/ssh_config me ayudan (openSUSE)

+0

También se puede configurar en el servidor remoto eliminando 'AcceptEnv LANG LC_ *' en/etc/ssh/sshd_config. Recomiendo hacer ambas cosas. Creo que esta es una solución mejor que cambiar la configuración del Terminal o instalar locales innecesarios en el servidor. –

6

En Debian Jessie:

me encontré:

sudo dpkg-reconfigure locales 

Agregado e instalar la configuración regional que falta. Luego funcionó.

+0

Tuve que hacer un 'sudo apt-get install locales' primero (Debian Jessie/Getchip) –

1

También tuvimos este problema en nuestra compañía cuando usamos IntelliJ. Un colega mío acaba de arreglarlo.

Para nosotros el problema era la línea SendEnv LANG LC_* en /etc/ssh/ssh_config. Cuando comencé a comentar esa línea, todo funcionó bien.

0

Para iTerm2:

Perfiles Perfiles → Abrir ... → Editar perfiles ... → → Terminal Unckeck Establece variables de entorno local automáticamente

Cuestiones relacionadas