webentwicklung-frage-antwort-db.com.de

SVN kann kein LC_CTYPE-Gebietsschema festlegen

Ich habe immer die folgende Fehlermeldung erhalten, wenn ich SVN auf meinem Server verwende:

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

meine Vermutung ist, dass mit meinem SVN-Client (Using Versions App) und dem Server SVN etwas nicht stimmt.

wie kann ich diese Warnung für immer vom Server verschwinden lassen, wenn ich solche Befehle verwende?

56
fxuser

Überprüfen Sie die Ausgabe von 

locale -a

Wenn das Gebietsschema, über das sich der SVN beschwert, nicht installiert ist, können Sie es installieren.

Möglicherweise müssen Sie Folgendes tun:

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

gefolgt von einem von (abhängig vom genauen Fehler von SVN ist der erste Fall Ihr):

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

Alternativ, wie Ankit in seine Antwort schreibt :

export LC_ALL=C

funktioniert möglicherweise (in Ihrer aktuellen Sitzung oder in Ihrem .profile).

57
JeeBee

Obwohl LC_CTYPE auf einen leeren Wert gesetzt wurde, funktionierte es für mich. Der Grund dafür war, dass das App-Terminal auf meinem Mac die Gebietsschemas beim Start festlegte, selbst wenn ich ein SSH auf ein anderes System stelle.

Dies kann in Terminal> Preferences behoben werden:

  • Wählen Sie die Registerkarte "Profile" und wählen Sie "Erweitert" aus den Unterregisterkarten
  • Deaktivieren Sie "Umgebungsvariablen des Gebietsschemas beim Start festlegen".
45
Andreas K

Wenn Sie dies beheben möchten, setzen Sie die Variable „LC_ALL“ manuell. 

Um es dauerhaft zu machen, bearbeiten Sie einfach die Datei "/ etc/environment" und fügen Sie die Zeile hinzu:

LC_ALL=C

Speichern Sie die Datei und verlassen Sie den Editor. Damit es angewendet werden kann, müssen Sie sich von der aktuellen Shell-Sitzung abmelden. Wenn Sie sich das nächste Mal anmelden, ist das Problem mit SVN verschwunden.

21
Ankit

LC_ALL und LANG-Einstellungen funktionierten nicht für mich, LC_CTYPE jedoch.

LC_CTYPE=en_US.UTF-8
13
Caner

Auf Debian Jessie :

Ich rannte:

Sudo dpkg-reconfigure locales

Das fehlende Gebietsschema wurde hinzugefügt und installiert.

7
LaGrandMere

das Auskommentieren der Zeilen mit SendEnv LANG LC_* in/etc/ssh/ssh_config hilft mir (openSUSE)

3
Subdigger

Dies wird dadurch verursacht, dass auf Ihrem System nicht die richtigen Ländereinstellungen generiert wurden.

Nicht kommentierte Zeilen, die Sie in /etc/locale.gen unterstützen möchten.

Zum Beispiel:

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

und dann ausführen Sudo locale-gen

2
Vadim Bryl

Dieses Problem hatten wir auch in unserem Unternehmen, wenn Sie IntelliJ verwenden. Ein Kollege von mir hat es gerade repariert.

Für uns war das Problem die Zeile SendEnv LANG LC_* in /etc/ssh/ssh_config. Als ich diese Zeile auskommentierte, funktionierte alles gut.

Für iTerm2:

Profile → Offene Profile… → Profile bearbeiten… → Terminal → Uncheck Gebietsschemavariablen automatisch setzen

1
Dmitriy Dokshin

Ich habe festgestellt, dass das Kombinieren mehrerer Antworten das richtige Verhalten ergibt.

  1. Wir müssen Unterstützung für das richtige Gebietsschema installieren (localadm für Sunos, locale-gen für Linux).
  2. Wir müssen LC_ALL auf das entsprechende Gebietsschema setzen

Dies hängt davon ab, welche Arten von Dateinamen Sie in Ihrer Quellstruktur haben. Zum Beispiel habe ich Englisch, Hebräisch und Arabisch. en_US.UTF-8 funktioniert für mich "C", da es zu Dateien führte, die ich nicht aktualisieren konnte.

0
Peter Kahn

Ich habe das Problem, wenn ich mich mit einem Remote-SSH-Server verbinde (SSH wird vom Befehl svnserve -> svn update verwendet).

Der Grund ist, dass auf dem Remote-Server nicht das Sprachpaket verfügbar ist, das auf dem lokalen Server in $ LANG festgelegt ist.

Sie können die installierten Sprachpakete über 'locale -a' überprüfen. Die Sprache $ LANG muss auf dem Remote-Server konfiguriert sein.

Z.B.

Lokaler Server: LANG = de_US.UTF-8

Remote-Server: locale -a -> nur de_DE.UTF-8 ist verfügbar

Lösung: Installieren Sie einfach das fehlende Sprachpaket auf dem Remote-Server: dpkg-reconfigure-Ländereinstellungen;

Übrigens: Die ausgewählte Standardsprache spielt keine Rolle.

0
Markus