2012-07-02 40 views
51

tôi bắt đầu nhận được các lỗi sau bất cứ khi nào tôi sử dụng SVN trong máy chủ của tôi:SVN không thể thiết lập LC_CTYPE locale

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 

tôi đoán là có thể có một cái gì đó xảy ra với khách hàng svn của tôi (Sử dụng phiên bản App) và máy chủ svn ...

Tôi làm cách nào để cảnh báo này biến mất vĩnh viễn khỏi máy chủ bất cứ khi nào tôi sử dụng các lệnh như vậy?

Trả lời

53

Kiểm tra đầu ra của

locale -a 

Nếu ngôn ngữ đó SVN được phàn nàn về không được cài đặt, sau đó bạn có thể cài đặt nó.

Bạn có thể cần phải làm:

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

Tiếp theo một trong (tùy thuộc vào lỗi chính xác từ SVN, bạn phải là trường hợp đầu tiên):

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

Ngoài ra như Ankit viết:

export LC_ALL=C 

có thể hoạt động (trong phiên hiện tại của bạn hoặc trong hồ sơ của bạn).

+0

Đối với những người trên solaris (xin lỗi): Bạn sẽ muốn cấu hình adm locale và sau đó thêm vào miền địa phương chính xác (ví dụ: 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

trên các hệ thống debian (và cũng có thể là Ubuntu), locale-gen không lấy đối số, nhưng tạo ra những gì được kích hoạt trong /etc/locale.gen. Ngoài ra, trên Máy chủ doanh nghiệp Univention dựa trên Deian, tệp này được tạo bởi cấu hình đăng ký, vì vậy các giá trị cho ngôn ngữ mong muốn/cần thiết/thiếu phải được đặt như sau: ucr set locale = 'de_DE.UTF-8 : UTF-8 en_US.UTF-8: UTF-8 ' – Henning

+0

Đối với tôi, thêm "env LC_ALL = C" vào /usr/share/applications/jetbrains-idea.desktop đã sửa nó. – Smile4ever

20

Nếu bạn muốn sửa lỗi này, hãy đặt biến “LC_ALL” theo cách thủ công.

Để làm cho nó vĩnh viễn chỉ cần chỉnh sửa các tập tin “/ etc/môi trường” và thêm dòng:

LC_ALL=C 

Lưu file và thoát khỏi trình soạn thảo. Để ứng dụng được áp dụng, bạn phải đăng xuất phiên phiên hiện tại. Lần sau khi bạn đăng nhập, vấn đề với SVN sẽ biến mất.

12

Cài đặt LC_ALL và LANG không hoạt động đối với tôi nhưng LC_CTYPE đã làm.

LC_CTYPE=en_US.UTF-8 
0

Tôi nhận thấy rằng việc kết hợp một số câu trả lời sẽ cho kết quả đúng hành vi.

  1. Chúng ta phải lắp đặt hỗ trợ cho các địa phương chính xác (localadm cho SunOS, locale-gen cho linux)
  2. Chúng ta phải thiết lập LC_ALL để ngôn ngữ thích hợp

này phụ thuộc vào những loại tên tập tin bạn có trong cây nguồn của bạn. Ví dụ, tôi có tiếng Anh, tiếng do thái và tiếng ả rập. en_US.UTF-8 hoạt động đối với tôi "C" trên bản thân nó đã dẫn đến các tệp mà tôi không thể cập nhật.

41

Mặc dù đặt LC_CTYPE thành giá trị rỗng làm việc cho tôi, lý do cơ bản là ứng dụng Thiết bị đầu cuối trên máy Mac của tôi đã đặt ngôn ngữ khi khởi động, ngay cả khi tôi SSH sang hệ thống khác.

này có thể được cố định trong Terminal> Preferences:

  • Chọn "Profiles" tab và chọn “Advanced” từ tiểu tab
  • Bỏ chọn "Thiết lập biến môi trường địa phương khi khởi động"
+3

Tôi tin rằng đây là một cách thích hợp để giải quyết vấn đề trên OS X. – Pavlo

+0

Có điều này cố định nó cho tôi bằng cách sử dụng Mavericks –

+1

Có một vài lựa chọn thay thế khác để giải quyết vấn đề này trên Mac OSX: http://www.cyberciti.biz/faq/os-x-terminal-bash-warning-setlocale-lc_ctype- cannot-change-locale/ –

1

Điều này là do không có miền địa phương thích hợp được tạo trên hệ thống của bạn.

dòng chú thích mà bạn muốn hỗ trợ trong /etc/locale.gen

Ví dụ:

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

và sau đó chạy sudo locale-gen

+0

Lý tưởng nhất là tôi muốn nói với Subversion sử dụng en_AU.UTF-8 nhưng đây là điều tốt nhất tiếp theo (IMO). –

2

ý kiến ​​ra dòng với SendEnv LANG LC_* trong/etc/ssh/ssh_config giúp tôi (openSUSE)

+0

Nó cũng có thể được cấu hình trên máy chủ từ xa bằng cách loại bỏ 'AcceptEnv LANG LC_ *' trong/etc/ssh/sshd_config. Tôi khuyên bạn nên làm cả hai. Tôi nghĩ đây là giải pháp tốt hơn thay đổi cấu hình Thiết bị đầu cuối hoặc cài đặt ngôn ngữ không cần thiết trên máy chủ. –

6

On Debian Jessie:

Tôi chạy:

sudo dpkg-reconfigure locales 

gia tăng và cài đặt locale mất tích. Sau đó, nó hoạt động.

+0

Tôi phải làm một 'sudo apt-get locale install' trước (Debian Jessie/Getchip) –

1

Chúng tôi cũng gặp vấn đề này trong công ty, khi sử dụng IntelliJ. Một đồng nghiệp của tôi vừa sửa nó.

Đối với chúng tôi, sự cố là dòng SendEnv LANG LC_* trong /etc/ssh/ssh_config. Khi tôi nhận xét ra rằng dòng, tất cả mọi thứ đã làm việc tốt.

0

Đối iTerm2:

Profiles → Open Profiles ... → Edit Profiles ... → ga → Unckeck Đặt biến locale tự động

Các vấn đề liên quan