我注意到在Windows上的 Git Bash 中运行git log
时,无法正确显示包含 German Umlaute 的提交消息。这些提交是在Ubuntu上使用 Terminal 进行的。通常,提交消息是用英语编写的,但是当涉及到名称时,无法绕过,例如: Added library by Simon Jünker.
我想它也可以是 Git Bash ,它无法处理字符编码。但也许有一个设置强制utf-8
编码在Git的任何模块( Git Gui , Git k )中编写和显示文本。
Git的多平台字符编码设置是什么?请确保在答案中包含两个平台的配置。您也可以添加MacOS。
答案 0 :(得分:1)
答案 1 :(得分:1)
尝试使用以下命令之一在 GIT Bash 提示符下设置 git config:
git config --global i18n.commitEncoding utf8
git config --global i18n.commitEncoding cp1252
如果您团队中的某个人使用其他编码,您将出现不匹配的情况。 Petra 使用 utf8:
git commit -m "Petras message with umlaut ÄäÜüÖöß etc."
Karl 使用 cp1252:
git commit -m "Karls message with umlaut ÄäÜüÖöß etc."
Sara 检查推送的分支,根据她的编码,她将看到其中一条消息格式正确,另一条消息格式错误。
git config --global i18n.commitEncoding utf8
git log -n 2 --oneline
Petras message with umlaut ÄäÜüÖöß etc.
Karls message with umlaut <C4><E4><D6><F6><DC><FC><DF> etc.
git config --global i18n.commitEncoding cp1252
git log -n 2 --oneline
Petras message with umlaut ÄäÜüÖöß etc.
Karls message with umlaut ÄäÜüÖöß etc.
答案 2 :(得分:0)
在Mac OS X上,只要您在Preferences&gt;中设置了编码设置,内置终端就能正常工作。设置&gt;高级并且您已选择“在启动时设置区域设置环境变量。”(这些是默认值。)
显然,Windows上的MSysGit不支持UTF-8,但是如果你通过cygwin的less
的副本管道git命令输出就可以了。有一些有用的信息in the msysgit Google Group。