Git学习之msysGit环境支持
==============================
msysGit中Shell环境的中文支持
==============================
1 中文录入的问题
默认的Shell环境无法输入中文。如果要在shell界面输入中文,需要修改配置文件 /etc/inputrc,
增加或修改相关的配置如下:
# disable/enable &bit input
set meta-flag on
set input-meta on
set output-meta on
set convert-meta off
设置完成后重启Git Bash
2 分页器中文输出问题
在对 /etc/inputrc 进行正确的配置后,如果执行下面的命令时显示乱码。就有可能是less分页器
命令导致的。
$ echo 您好 | less
<C4><FA><BA><C3>
之所以less命令会导致出现乱码,是因为该命令没有把中文当做正常的字符。可以通过设置
LESSCHARSET环境变量将UTF_8编码字符作为正常的字符:
$ export LESSCHARSET=utf-8
$ echo 您好 | less
您好
编辑配置文件 /etc/profile,将对环境变量的设置加入其中,这样就可以在msysGit的shell环境启动
时加载。
declare -x LESSCHARSET=utf-8
3 ls命令显示中文文件名
有时候 ls 命令下,文件的内容显示中文没有任何的问题,但是文件名确显示为一串问号。
方法1:在ls命令的后面添加参数 --show-control-chars即可正确显示中文
方法2:为方便起见,可以为ls命令设置一个别名,这样就不用每次都输入参数了
$ alias ls="ls --show-control-chars"
$ ls \*.txt
将alias命令添加到 /etc/profile中,每次msysGit启动时自动加载
==============================
msysGit中Git的中文支持
==============================
1 如果想在提交说明中使用中文,对msysGit进行一定的设置后即可。
(1)解决提交说明中中文显示为乱码的问题,需要设置logOutputEncoding:
$ git config --system il8n.logOutputEncoding gbk
(2) 如果在非UTF-8字符集的平台中录入中文,需要设置录入提交说明的字符集:
$ git config --system il8n.commitEncoding gbk
(3) 让带有中文文件名的文件在工作区状态输出、查看历史更改概要,以及在补
丁文件中能够正常显示,要为Git设置core.quotepath配置变量,将其设置
为false:
$ git config --system core.quotepath false
$ git status -s