他のプログラムの言語を変更せずにLinuxインストールでgitの言語を英語に変更したいのですが、設定が見つかりませんでした。どうやってするの?
他のプログラムの言語を変更せずにLinuxインストールでgitの言語を英語に変更したいのですが、設定が見つかりませんでした。どうやってするの?
回答:
次の行をに追加する~/.bashrcか~/.bash_profile、gitにすべてのメッセージを英語で表示させる:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
エイリアスは、オーバーライドする必要があるLC_ALLいくつかのシステムでは、環境変数LC_ALLが設定されているが優先されLANGます。詳細については、UNIX仕様-環境変数を参照してください。
# Set Git language to English
#alias git='LC_ALL=en_US git'
alias git='LC_ALL=en_GB git'
これらの行を~/.bashrcエイリアスに追加した場合、新しいインタラクティブシェルが開始されるときに定義されます。追加した場合~/.bash_profileエイリアスに、ログイン時に適用されます。
.bash.rc代わりに.bashrc)ファイル名にタイプミスがありました。を.bashrc実行するには、シェルを閉じてから再起動する必要もあります。これについてもメモを追加しました。
.bashrc再起動しても自分で試してみました。エイリアスは機能します。言語が変わらないだけです。
.bashrcが正常に実行されたことを確認するにecho "This is .bashrc"は、ファイルの最後にlikeなどのテストを追加します。また、端末やシステム全体を再起動することなく、オンデマンドで実行させることもできます. .bashrc。最後に、最初のLC_ALL環境変数LANGが優先されるため、ではなく環境変数を設定することをお勧めします。
.bashrc本当に、すべてが問題ありません。場合はLC_ALL優先度を持ち、これは問題になり、それが私の言語に設定されています。しかし、その後、一般的な言語設定を変更したくありません... 1つのプログラムで上書きできませんか?
$ LC_ALL="en_US" manからお試しください$ man
代わりに1つのコマンドを英語で使用したい場合はLC_ALL=C、コマンドの前に次のように書くことができます。例:
LC_ALL=C git status
結果になります
# On branch master
nothing to commit, working directory clean
で使用されてCいるロケールは英語であり、追加の言語パックをインストールしなくても常に使用できます
(https://askubuntu.com/a/142814/34298を参照))
現在のbashセッション全体で変更するには、次のように入力します。
LANG=C
たとえばドイツ語に変更するには
LANG=de_DE.UTF-8
LC_ALL=C提案に感謝しますLC_ALL="en_US"。ロケールに問題があるため、最近は機能しません。
この行を追加すると、問題が解決しました:
$ more ~/.bash_profile
export LANG=en_US
注:Git 2.3.1以降(2015年第1四半期および第2四半期)以降、Gitは可能であればAccept-Languageヘッダーを追加します。Yi EungJun()によるコミットf18604bを
参照してくださいeungjun-yi
追加
Accept-Languageによって定義されたユーザの好みの言語を示すヘッダを$LANGUAGE、$LC_ALL、$LC_MESSAGESおよび$LANG。これにより、gitサーバーはユーザーの優先言語でリモートエラーメッセージを表示できます。
あなたが持っているgitのGUIのロケールまたはその他のGUIの。コマンドラインではなく、GitSurvey 2010の質問の1つであると考えて
localization of command-line messages (i18n) 258 3.6%
もちろん、2010年以降、次のようにpo/README説明しています。
文字列を翻訳する前に、まず翻訳のマークを付ける必要があります。
Gitは、システムの
gettextライブラリーをラップする国際化インターフェースを使用する ため、(info gettext端末のGNUシステムでの)gettext文書のほとんどのアドバイスが適用されます。
git 1.7.9以降(2012年1月)以降:
gettext翻訳が利用可能で、ロケールが適切に設定されている場合、Gitは最も一般的なインターフェースメッセージをユーザーの言語に翻訳するために使用します。
ディストリビューターは新しいPOファイルをドロップしpo/て新しい翻訳を追加できます。
そのため、更新で翻訳がめちゃくちゃになっている
場合は、gettext使用方法を確認して
ください。たとえば、「ロケール環境変数」を参照してください。
ロケールは、いくつかのロケールカテゴリで構成されます。アスペクトを参照してください。プログラムがロケールに依存する値を検索するとき、次の環境変数に従って優先順位でこれを行います。
LANGUAGE
LC_ALL
LC_xxx, according to selected locale category: LC_CTYPE, LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES, ...
LANG
値は設定されているが空の変数は、このルックアップでは無視されます。
LANGロケールを指定するための通常の環境変数です。ユーザーは通常、この変数を設定します(他の変数の一部が、システムによって、/etc/profileまたは同様の初期化ファイルですでに設定されている場合を除く)。
LC_CTYPE、LC_NUMERIC、LC_TIME、LC_COLLATE、LC_MONETARY、LC_MESSAGES、というように、上書きするもので、環境変数でありLANG、唯一つのロケールカテゴリに影響を与えます。
たとえば、スペインのスウェーデンのユーザーであり、プログラムでスペインの規則に従って数値と日付を処理し、メッセージのみがスウェーデンである必要があるとします。次に、プログラムを使用して、'sv_ES'または 'sv_ES.UTF-8' という名前のロケールを作成できますlocaledef。しかし、それは単純であり、および設定するには、同じ効果を達成LANGする変数es_ES.UTF-8やLC_MESSAGES変数にしますsv_SE.UTF-8。これら2つのロケールは、オペレーティングシステムにあらかじめインストールされています。
LC_ALLこれらすべてをオーバーライドする環境変数です。通常、特定のプログラムを実行するスクリプトで使用されます。たとえば、GNUによって生成されたスクリプトを構成しautoconfます。LC_ALLの構成テストは、ロケールに依存した方法で動作していないことを確認します。一部のシステムは、残念ながら、同様の初期化ファイルに設定さ
LC_ALLれてい/etc/profileます。したがって、ユーザーは、LANG必要に応じて他のLC_xxx変数を設定したい場合は、この変数を設定解除する必要があります。
LANG使用gitしている(または起動git-guiしている)bash / shell / DOSセッションで設定している限り、git(またはgit-gui)のみがその特定の設定を使用します。他のすべてのプログラムは、システム/ユーザー環境変数を継承します。
ロケール言語が見つからない場合、GITはデフォルトで英語に設定されます。
したがって、GITを英語にしたい場合は、GITを実行している言語ファイルを妨害してください。私の場合、それは常にドイツ語で実行されていました(つまり:de.msg)。
削除したり名前を変更したりすると、デフォルトで英語になりました。

ここでファイルの名前を変更しました

C:\Program Files\Git\mingw64\share\locale\$LANG\LC_MESSAGES\git.moます。
/usr/local/Cellar/git/2.21.0/share/locale/。
Bengtが提案したように:これらの行をに追加する~/.bashrcか~/.bash_profile、gitにすべてのメッセージを英語で表示するように強制します。-
vim ~/.bashrcこのプロファイルの場合(ユーザーでubuntuあり、これを編集する場合は、このユーザー専用です)。この行を追加します。
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
#you can add also
LANG=en_GB
そしてファイルを閉じた後、シェルで書く必要があります:
source ~/.bashrc
新しい設定をリロードするか、ターミナルを終了して再度接続するには:)
LANG=en_GBに~/.bashrcなっているのですか?ローカル変数を定義するだけではありませんLANGか?