27

我的 ˋgitˋ 是德语的,上面写着:

ˋ奥夫茨威格大师ˋ

代替

On branch master

git status.

这是什么原因?

4

4 回答 4

43

可能您的语言环境是德语。您可以通过locale. 尝试通过以下方式更改它:export LANG="en_US.UTF-8"

于 2012-07-18T12:00:47.323 回答
20

原因是您的命令行语言设置为德语。所以当你这样做时:

echo $LANG

你会看见:

de_DE.UTF-8

要改变这一点,请执行以下操作:

echo "export LANG=en_US.UTF-8" >> ~/.bashrc

假设您的标准外壳是 bash。

不要忘记:

source ~/.bashrc
于 2012-07-18T12:00:10.693 回答
11

有时仅更改LANG环境变量是不够的。

您可能还需要添加LC_ALL

export LC_ALL=en_US.UTF-8

根据IEEE 和 The Open Group - Environment Variables

这是因为开始的环境变量LC_*首先由您的系统使用LANG

语言环境类别的值应由优先顺序确定;下面满足的第一个条件确定值:

  1. 如果定义了 LC_ALL 环境变量并且不为空,则应使用 LC_ALL 的值。

  2. 如果定义了 LC_* 环境变量(LC_COLLATE、LC_CTYPE、LC_MESSAGES、LC_MONETARY、LC_NUMERIC、LC_TIME)且不为空,则应使用环境变量的值来初始化与环境变量对应的类别。

  3. 如果 LANG 环境变量已定义且不为空,则应使用 LANG 环境变量的值。

  4. 如果 LANG 环境变量未设置或设置为空字符串,则应使用实现定义的默认语言环境。

要永久更改它,您需要将上面的代码粘贴到您喜欢的 shell 配置文件中(可能是~/.bashrc~/.zshrc

然后应用修改:

$ source ~/.bashrc

或者

$ source ~/.zshrc

否则,只需打开一个新终端。

于 2016-05-09T11:56:01.837 回答
10

就我而言,设置LANG还是LC_ALL不够的。我还有一个LANGUAGE环境变量设置为en_GB:en_US:de. git尽管排序可能是一种偏好顺序,但它导致了来自其他命令行程序的德语响应。当我把它改成 时en_GB:en_USgit其他程序都变成了英文。

于 2019-03-13T10:34:05.333 回答