3

私のgitログで今見ているものは次のとおりです。

commit d0ed97d243eaf905b03244a4d1ba6af26213e4ad
Author: some guy <someone@somesite.com>
Date:   Mon Jun 3 11:22:06 2013 +0900

<E3><83><98><E3><83><83><E3><83><80><E3><81><AE><E3><83><A6><E3><83><BC><E3><82><B6><E3><82><A2><E3><82><A4><E3><82><B3><E3><83><B3><E8><A1><A8><E7><A4><BA>

コミットは一部の日本人キャラクターによって行われます。

LANG 環境を ja_JP.UTF-8、en_US.UTF-8、ja_JP.eucJP に変更済みです。

$ export LANG=ja_JP.UTF-8

しかし、何も機能しませんでした。

誰かが知って、私にいくつかのポイントを与えてくれることを願っています。ありがとう。


更新 (解決策 1):

最後に、ローカル環境(MacOS)のファイルの行SendEnv LANG LC_*をコメントアウトすることで、これらの日本語の文字を表示することができました。/etc/ssh_configしかし、私はこの問題を解決したとは思いません。LANGの設定をサーバー側(CentOS)に送る方法を切り捨てただけだと思います。$ localeしたがって、基本的に、ローカルenv(mac)で試したときに次の設定が表示されるため、ローカルenvのLANG設定はまだ混乱しています。

LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

これは明らかに不適切な設定です。
私はまだゴーグルをしています...


更新(解決策2):

私は最終的に「ロケール」の問題の解決策を見つけました。
ここに私が見つけたリンクがあります: Mac OSX ターミナルでロケールの問題を修正する方法
ここにいるすべての人からのすべての助けに感謝します。

4

1 に答える 1

7

システムが UTF-8 を適切にサポートしていることを確認してください。ほとんどの Ubuntu および Fedora ボックスがそうです。端末または ssh セッションを使用している場合は、ssh クライアントが完全に使用するように構成されていることを確認してくださいUTF-8。たとえば、を使用している場合は、環境設定でエンコーディングputtyを使用するように設定してUTF-8ください。これはデフォルト設定ではありません。

この Fedora 16 ボックスには比較的古い git バージョン 1.7.7.6 がありますが、ロケールを適切に設定している限り、問題なく動作するようです。

$ export LANG=en_US.UTF-8
$ git log
commit 40b8cb9fc58775826a511c5338370f7fd1454481
Author: some guy <someone@somesite.com>
Date:   Wed Jun 5 22:57:10 2013 -0700

welcome
привет
ヘッダのユー

ロケールを日本語に設定しても、同じように機能します。

$ export LANG=ja_JP.UTF-8
$ git log
commit 40b8cb9fc58775826a511c5338370f7fd1454481
Author: some guy <someone@somesite.com>
Date:   Wed Jun 5 22:57:10 2013 -0700

welcome
привет
ヘッダのユー

しかし、ロケールを Posix に設定すると壊れます ( C):

$ export LANG=C
$ git log
commit 40b8cb9fc58775826a511c5338370f7fd1454481
Author: some guy <someone@somesite.com>
Date:   Wed Jun 5 22:57:10 2013 -0700

welcome
<D0><BF><D1><80><D0><B8><D0><B2><D0><B5><D1><82>
<E3><83><98><E3><83><83><E3><83><80><E3><81><AE><E3><83><A6><E3><83><BC>

参考までに、作業ロケールは次のようになります。

$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
于 2013-06-06T06:16:25.200 に答える