64

サーバーで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に何か問題がある可能性があります...

このようなコマンドを使用するたびに、この警告をサーバーから永久に非表示にするにはどうすればよいですか?

4

12 に答える 12

66

の出力を確認してください

locale -a

SVN が不満を言っているロケールがインストールされていない場合は、インストールできます。

Debian または同様のシステムでは、次のことを行う必要がある場合があります。

sudo dpkg-reconfigure locales

ロケールを手動で構成する場合:

sudo vim /etc/locale.gen # and add "en_US.UTF-8 UTF-8"
sudo locale-gen

またはlocale-gen、引数をサポートしている場合 (Debian ではありません):

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

あるいは、Ankitが彼の答えに書いているように:

export LC_ALL=C

動作する可能性があります (現在のセッションまたは .profile で)。

于 2012-07-04T09:34:13.153 に答える
49

LC_CTYPE を空の値に設定してもうまくいきましたが、根本的な理由は、別のシステムに SSH 接続した場合でも、Mac のアプリ ターミナルが起動時にロケールを設定していたためです。

これは、[ターミナル] > [設定] で修正できます。

  • 「プロファイル」タブを選択し、サブタブから「詳細」を選択します
  • 「起動時にロケール環境変数を設定する」のチェックを外す
于 2013-11-20T10:57:37.650 に答える
28

これを修正したい場合は、「LC_ALL」変数を手動で設定してください。

永続的にするには、ファイル「/etc/environment」を編集して次の行を追加します。

LC_ALL=C

ファイルを保存してエディターを終了します。適用するには、現在のシェル セッションからログアウトする必要があります。次回ログインすると、SVN の問題はなくなります。

于 2012-07-03T06:31:08.297 に答える
14

LC_ALLとLANGの設定は機能しませんでしたが、LC_CTYPEは機能しました。

LC_CTYPE=en_US.UTF-8
于 2012-12-27T14:07:30.547 に答える
9

Debian Jessie の場合:

私は走った:

sudo dpkg-reconfigure locales

不足しているロケールを追加してインストールしました。その後、うまくいきました。

于 2016-03-07T11:15:16.143 に答える
3

SendEnv LANG LC_* /etc/ssh/ssh_configの行をコメントアウトすると役立ちます (openSUSE)

于 2015-08-03T05:30:41.963 に答える
1

iTerm2 の場合:

Profiles → Open Profiles… → Edit Profiles… → Terminal → Unckeck Set local variables automatically

于 2016-11-07T10:01:43.993 に答える
1

IntelliJを使用している場合、私たちの会社でもこの問題が発生しました。私の同僚がちょうどそれを修正しました。

私たちにとって問題は の行でしSendEnv LANG LC_*/etc/ssh/ssh_config。その行をコメントアウトすると、すべて正常に機能しました。

于 2016-06-30T07:44:29.053 に答える
0

複数の回答を組み合わせると、正しい動作が得られることがわかりました。

  1. 正しいロケールのサポートをインストールする必要があります (sunos の場合は localadm、Linux の場合は locale-gen)。
  2. LC_ALL を適切なロケールに設定する必要があります

これは、ソース ツリーにあるファイル名の種類によって異なります。たとえば、英語、ヘブライ語、アラビア語があります。en_US.UTF-8 は「C」で機能し、それ自体が更新できなかったファイルにつながりました。

于 2012-12-27T22:11:03.863 に答える