msysGit的中文支持—git学习笔记

Earlyuan 2012-01-05

之前有发了篇引子文章《git学习笔记—web前端开发七武器》,简单的介绍了下git,本来想按传统的方式一步步介绍git,转念一下,其实意义不大,网上已经有完整的git的教程,比如《Git Community Book 中文版》,明河再重复写就显得多余。所以打算以更为松散的笔记形式,给大家介绍一些git技巧,今天要介绍的是msysGit的中文支持问题。msysGit应该是大家在window下主要使用的git客户端,而msysGit对于中文的支持非常不友好,实际上可以通过一些配置来改善msysGit的中文支持。

解决msysGit的中文录入问题

msysGit的shell环境中无法输入中文的,想要输入中文,我们需要修改下配置文件/etc/inputrc。

步骤1:进入git安装目录,找到/etc/inputrc;

步骤2:修改配置项

找到如下配置代码

setoutput-metaoff

setconvert-metaon

修改成

setoutput-metaon

setconvert-metaoff

步骤3:关闭gitbash然后再重启

就可以在shell环境中输入中文了,如下图:

虽然可以输入中文,但msysGit在中文的显示上依旧有问题,接下来我们来看下如果解决中文显示问题。

解决msysGit的提交说明乱码问题

我们先来看个提交中文说明的情况:

gitlog显示日志时,出现的是看不懂的乱码,而且gitcommit-m提交时会出现一堆的警告。接下来我们设置几项配置

gitconfig–systemi18n.logOutputEncodinggbk用于将提交说明的输出编码设置为gbk

gitconfig–systemi18n.commitEncodinggbk标注提交说明所使用的字符集。

exportLESSCHARSET=utf-8设置分页器的编码,这与gitlog能否正常打印中文日志息息相关,因为gitlog的显示采用的就是less分页器,LESSCHARSET是分页器的环境变量,只要设置为utf-8,即可正常显示中文

(ps:请避免使用中文名称的文件,虽然通过msysGit的设置可以正常显示中文名文件。)