web-dev-qa-db-fra.com

SVN ne peut pas définir les paramètres régionaux LC_CTYPE

J'ai commencé à avoir l'erreur suivante chaque fois que j'utilise SVN sur mon serveur:

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

je suppose qu'il y a peut-être un problème avec mon client svn (Using Versions App) et le serveur svn ...

comment faire pour que cet avertissement disparaisse à jamais du serveur chaque fois que j'utilise de telles commandes?

56
fxuser

Vérifiez la sortie de 

locale -a

Si les paramètres régionaux sur lesquels SVN se plaint ne sont pas installés, vous pouvez les installer.

Vous devrez peut-être faire:

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

suivi de l'un des (selon l'erreur exacte de SVN, le premier cas est le vôtre):

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

Alternativement, comme l'écrit Ankit dans sa réponse :

export LC_ALL=C

peut fonctionner (dans votre session en cours ou dans votre .profile).

57
JeeBee

Bien que définir LC_CTYPE sur une valeur vide fonctionne pour moi, la raison sous-jacente était que le terminal d'application sur mon Mac définissait les paramètres régionaux au démarrage, même lorsque SSH était connecté à un autre système.

Cela peut être corrigé dans Terminal> Préférences:

  • Sélectionnez l'onglet "Profils" et sélectionnez "Avancé" dans les sous-onglets.
  • Décocher "Définir les variables d'environnement locales au démarrage"
45
Andreas K

Si vous souhaitez résoudre ce problème, définissez la variable “LC_ALL” manuellement. 

Pour le rendre permanent, éditez simplement le fichier “/ etc/environment” et ajoutez la ligne suivante:

LC_ALL=C

Enregistrez le fichier et quittez l'éditeur. Pour pouvoir l'appliquer, vous devez vous déconnecter de la session Shell en cours. La prochaine fois que vous vous connecterez, le problème avec SVN disparaîtra.

21
Ankit

Les paramètres LC_ALL et LANG ne fonctionnaient pas pour moi, mais LC_CTYPE le faisait.

LC_CTYPE=en_US.UTF-8
13
Caner

On Debian Jessie :

Iran:

Sudo dpkg-reconfigure locales

Ajout et installation des paramètres régionaux manquants . Ensuite, cela a fonctionné.

7
LaGrandMere

commenter les lignes avec SendEnv LANG LC_* dans/etc/ssh/ssh_config m'aide (openSUSE)

3
Subdigger

Cela est dû au fait que les paramètres régionaux appropriés ne sont pas générés sur votre système.

Lignes non commentées que vous souhaitez prendre en charge dans /etc/locale.gen

Par exemple:

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

puis exécutez Sudo locale-gen

2
Vadim Bryl

Nous avons également rencontré ce problème dans notre entreprise avec IntelliJ. Un de mes collègues vient de le réparer.

Pour nous, le problème était la ligne SendEnv LANG LC_* dans /etc/ssh/ssh_config. Quand j'ai commenté cette ligne, tout a bien fonctionné.

Pour iTerm2:

Profils → Ouvrir les profils… → Modifier les profils… → Terminal → Décocher Définir automatiquement les variables de localisation

1
Dmitriy Dokshin

J'ai trouvé qu'en combinant plusieurs réponses, on entend un comportement correct.

  1. Nous devons installer le support pour la localisation correcte (localadm pour sunos, locale-gen pour linux)
  2. Nous devons définir LC_ALL sur les paramètres régionaux appropriés

Cela dépend des types de noms de fichiers que vous avez dans votre arborescence de sources. Par exemple, j'ai l'anglais, l'hébreu et l'arabe. en_US.UTF-8 fonctionne pour moi. "C" sur son propre conduit à des fichiers que je ne pouvais pas mettre à jour.

0
Peter Kahn

J'ai eu le problème lorsque je me connecte à un serveur ssh distant (ssh est utilisé par svnserve -> commande svn update).

La raison en est que le pack linguistique disponible sur le serveur distant n'est pas défini dans $ LANG sur le serveur local.

Vous pouvez vérifier les modules de langue installés avec "locale -a". La langue $ LANG doit être configurée sur le serveur distant.

Par exemple.

Serveur local: LANG = en_US.UTF-8

Serveur distant: locale -a -> seul de_DE.UTF-8 est disponible

Solution: installez simplement le module linguistique manquant sur le serveur distant: dpkg-reconfigure locales;

au fait: la langue sélectionnée par défaut n'a pas d'importance.

0
Markus