Git在我的系统中没有使用英语作为默认语言,我也不知道为什么。我在macOS 10.13.6上,并使用随Homebrew一起安装的最后一个Git。
在某些具有git集成的应用程序中,例如本机或带有软件包的应用程序(例如Sublime Text或Fork),一些git消息以西班牙语提供。
我的系统以英语安装,英语是系统的主要语言。我在系统中将西班牙语设置为第二语言,但是使用了西班牙语键盘。
我是西班牙语,我理解消息,但是我用英语设置了所有内容,但我不知道为什么出现此消息。
在终端上,所有内容都是英文,并且在.bash_profile
中,我已经设置:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
我想知道某个地方是否存在任何隐藏设置或可能导致此问题的原因。
有什么想法吗?
PS1 /我刚刚卸载并安装了git,但没有任何改变。
PS2 /如果您使用的是GitSavvy软件包,那么您可以提供git环境变量。如果你放在那里
"env": {
"LANG": "en_US.UTF-8"
},
Git以正确的语言工作。这不是解决方案的想法。
PS3 /这与https://apple.stackexchange.com/questions/337244/homebrew-and-git-wrong-language-on-the-command-line
相关答案 0 :(得分:0)
我终于弄明白了!
问题仅发生在Homebrew的Git上,似乎是Homebrew的问题跟踪器(#37331,#31980和特定的comment)中的一些评论和问题,可惜没有由Homebrew小组解决。
然后出现问题,然后将Homebrew的Git安装在默认语言为英语且还存在其他第二语言的系统中。它似乎与gettext有关。
有两种解决方案:
安装原始的Git二进制文件。如果您是Homebrew用户,那么这是一个较差的解决方案,因为您可能希望为了方便起见将所有内容与Homebrew一起安装。
在调用Git时将语言环境变量解析为受影响的应用程序。 Sublime Text的Savvy包可以做到这一点,但也许并非总是如此。
对于终端来说很容易。您只需将自己的终端个人资料添加到~/.bash_profile
或~/.zshrc
或其他任何内容中:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
我试图扩展整个系统,但没有在我的~/.bashrc
和/etc/bashrc
和/etc/profile
中插入它们。有关此here的更多信息。也许你运气更好。
无论如何,如果您的计算机上有另一个使用非英语的其他语言的用户,那是不好的。
/usr/local/Cellar/git/X.XX.xx/share/locale
的Git桶中,删除/重命名冒犯者的语言环境是es
。我决定只添加一个.back
重命名它,每次Git更新时都可以使用此命令轻松完成$ find $(brew --prefix)/Cellar/git -type d -name "es" -print0 | xargs -I{} mv {} {}.back
您只需用您的语言环境替换es
,它将重命名为your-locale.back
。
答案 1 :(得分:0)
这很可能是Git中的错误。我已经在其他应用程序中看到了这一点。发生什么情况了,程序作者将用英语编写基本程序,然后提供其他语言的翻译文件,但不提供private void fetchData(DataSnapshot dataSnapshot)
{
for(DataSnapshot postSnapShot:dataSnapshot.getChildren())
{
Day day= postSnapShot.getValue(Day.class);
listDays.add(day);
}
}
翻译文件,因为为什么当基础程序这样做时节目已经是英文了吧?然后,发生的情况是本地化库(gettext)从系统中的首选语言列表中查找,并在git程序中为每种语言查找翻译文件。它没有找到一种英语,但是有一种西班牙语,所以它使用了它!
在像您这样的情况下,要使程序正常工作,需要做的是,程序需要为en_US
提供翻译文件,即使已经编写了基本程序,用英语
您应该将此报告为Git上游的错误。