SVN не может установить локаль LC_CTYPE
Я начал получать следующую ошибку, когда я использую SVN на своем сервере:
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
Я предполагаю, что может быть что-то не так с моим svn-клиентом (с использованием приложения Versions) и сервером svn...
как я могу заставить это предупреждение навсегда исчезнуть с сервера всякий раз, когда я использую такие команды?
Ответы
Ответ 1
Проверьте вывод
locale -a
Если языковой стандарт, с которым связывается SVN, не установлен, вы можете его установить.
Вам может потребоваться сделать:
sudo apt-get install language-pack-en-base
за которым следует одна из (в зависимости от точной ошибки SVN, ваш первый случай):
sudo locale-gen UTF-8
sudo locale-gen en_GB.UTF-8
sudo locale-gen en_US.UTF-8
Альтернативно, как пишет Ankit:
export LC_ALL=C
может работать (в вашем текущем сеансе или в вашем .profile).
Ответ 2
Хотя установка LC_CTYPE на пустое значение сработала для меня, основная причина заключалась в том, что приложение Terminal на моем Mac устанавливало локали при запуске, даже когда я SSH в другую систему.
Это можно исправить в Terminal > Preferences:
- Выберите вкладку "Профили" и выберите "Дополнительно" на суб-вкладках
- Снимите флажок "Установить переменные среды локали при запуске"
Ответ 3
Если вы хотите исправить это, установите переменную "LC_ALL" вручную.
Чтобы сделать его постоянным, просто отредактируйте файл "/etc/environment" и добавьте строку:
LC_ALL=C
Сохраните файл и выйдите из редактора. Для его применения вы должны выйти из текущего сеанса оболочки. При следующем входе в систему проблема с SVN исчезнет.
Ответ 4
Настройки LC_ALL и LANG не работали для меня, но LC_CTYPE.
LC_CTYPE=en_US.UTF-8
Ответ 5
В Debian Jessie:
Я побежал:
sudo dpkg-reconfigure locales
Добавлен и установлен отсутствующий языковой стандарт.
Тогда это сработало.
Ответ 6
комментирование строк с помощью SendEnv LANG LC_*
в /etc/ssh/ssh _config помогает мне (openSUSE)
Ответ 7
Это вызвано тем, что в вашей системе не созданы правильные локали.
Некомментированные строки, которые вы хотите поддерживать в /etc/locale.gen
Например:
en_GB.UTF-8 UTF-8
en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8
а затем запустите sudo locale-gen
Ответ 8
У нас была эта проблема и в нашей компании, при использовании IntelliJ. Мой коллега только что исправил его.
Для нас проблемой была строка SendEnv LANG LC_*
в /etc/ssh/ssh_config
. Когда я прокомментировал эту строку, все было хорошо.
Ответ 9
Я обнаружил, что объединение нескольких ответов позволяет получить правильное поведение.
- Мы должны установить правильную локаль (localadm для sunos, locale-gen для linux)
- Мы должны установить LC_ALL в соответствующий языковой стандарт
Это зависит от того, какие имена файлов у вас есть в исходном дереве. Например, у меня английский, иврит и арабский. en_US.UTF-8 работает для меня "C" сам по себе привел к файлам, которые я не смог обновить.
Ответ 10
Для iTerm2:
Профили → Открыть профили... → Изменить профили... → Терминал → Отменить Автоматически установить языковые переменные