UFO ET IT

SVN은 LC_CTYPE 로케일을 설정할 수 없습니다.

ufoet 2020. 12. 10. 20:45
반응형

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 클라이언트 (버전 앱 사용)와 서버 svn에 문제가있을 수 있습니다.

이러한 명령을 사용할 때마다이 경고가 서버에서 영원히 사라지도록하려면 어떻게해야합니까?


출력 확인

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에서) 작동 할 수 있습니다.


LC_CTYPE을 빈 값으로 설정하면 효과가 있었지만 근본적인 이유는 Mac의 앱 터미널이 시작시 로케일을 설정했기 때문입니다.

터미널> 기본 설정에서 수정할 수 있습니다.

  • "프로필"탭을 선택하고 하위 탭에서 "고급"을 선택합니다.
  • "시작시 로케일 환경 변수 설정"을 선택 취소하십시오.

이 문제를 해결하려면 "LC_ALL"변수를 수동으로 설정하십시오.

영구적으로 만들려면 "/ etc / environment"파일을 편집하고 다음 행을 추가하십시오.

LC_ALL=C

파일을 저장하고 편집기를 종료하십시오. 적용하려면 현재 쉘 세션에서 로그 아웃해야합니다. 다음에 로그인하면 SVN 문제가 사라집니다.


LC_ALL 및 LANG 설정은 저에게 작동하지 않았지만 LC_CTYPE은 작동했습니다.

LC_CTYPE=en_US.UTF-8

데비안 제시 :

나는 달렸다 :

sudo dpkg-reconfigure locales

누락 된 로케일을 추가하고 설치했습니다. 그런 다음 작동했습니다.


SendEnv LANG LC_* / etc / ssh / ssh_config에서 줄을 주석 처리 하면 도움이됩니다 (openSUSE).


이는 시스템에 적절한 로케일이 생성되지 않았기 때문입니다.

/etc/locale.gen 에서 지원하려는 주석 처리되지 않은 줄

예를 들면 :

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

그런 다음 sudo locale-gen 을 실행하십시오.


우리 회사에서도 IntelliJ를 사용할 때이 문제가 발생했습니다. 내 동료가 방금 고쳤습니다.

우리에게 문제는 라인이었다 SendEnv LANG LC_*에를 /etc/ssh/ssh_config. 내가 그 줄을 주석 처리했을 때 모든 것이 잘 작동했습니다.


iTerm2의 경우 :

프로파일 → 프로파일 열기… → 프로파일 편집… → 터미널 → Unckeck 자동으로 로케일 변수 설정


여러 답변을 결합하면 올바른 행동이 생성된다는 것을 알았습니다.

  1. 올바른 로케일에 대한 지원을 설치해야합니다 (sunos의 경우 localadm, linux의 경우 locale-gen).
  2. LC_ALL을 적절한 로케일로 설정해야합니다.

이것은 소스 트리에있는 파일 이름의 종류에 따라 다릅니다. 예를 들어 영어, 히브리어, 아랍어가 있습니다. en_US.UTF-8은 내가 업데이트 할 수없는 파일로 이어지는 자체 "C"에서 작동합니다.


원격 ssh 서버에 연결할 때 문제가 발생했습니다 (ssh는 svnserve-> svn update 명령에서 사용됨).

그 이유는 원격 서버에 로컬 서버에서 $ LANG로 설정된 사용 가능한 언어 팩이 없기 때문입니다.

설치된 언어 팩은 'locale -a'로 확인할 수 있습니다. $ LANG 언어는 원격 서버에서 구성되어야합니다.

로컬 서버 : LANG = en_US.UTF-8

원격 서버 : locale -a-> de_DE.UTF-8 만 사용 가능

해결 방법 : 원격 서버에 누락 된 언어 팩을 설치하기 만하면됩니다. dpkg-reconfigure locales;

btw : 선택한 기본 언어는 중요하지 않습니다.

참고URL : https://stackoverflow.com/questions/11300633/svn-cannot-set-lc-ctype-locale

반응형