Git for windows 中文乱码解决方案

原文链接:http://my.oschina.net/lujian863/blog/168837

Git是在linux下开发的,linux的编码方式是基于UTF-8的,所以移植到Windows之后难免会存在编码冲突,导致乱码。Git 在Windows下有多种乱码情况,请按具体情况操作~ 

假设git安装目录为 C:\Git

1.使用 git add 命令添加文件名含中文字符的文件时

乱码类似:

?
1
\ 316 \ 304 \ 261 \ 276 \ 316 \ 304 \ 265 \ 265 .txt

解决方案:

编辑C:\Git\etc\inputrc文件中对应的行, 
查找以下2行,并修改其值, 
原先:

?
1
2
set output-meta off
     set convert-meta on

改为:

?
1
2
set output-meta on
     set convert-meta off

2.使用git log查看含有中文的log信息时

乱码类似:

?
1
<E4><BF><AE><E6>< 94 ><B9><E6>< 96 >< 87 ><E6><9C><AC><E6>< 96 >< 87 ><E6><A1><A3>

解决方案:

在Bash提示符下输入:

?
1
2
git config --global i18n.commitencoding utf- 8
     git config --global i18n.logoutputencoding gbk

注:设置commit提交时使用utf-8编码,可避免Linux服务器上乱码;同时设置在执行git log时将utf-8编码转换成gbk编码,以解决乱码问题。 
编辑C:\Git\etc\profile文件,添加如下一行:

?
1
export LESSCHARSET=utf- 8

注:以使git log可以正常显示中文(需要配合:i18n.logoutputencoding gbk)

3.使用ls命令查看含有中文的文件名乱码时

乱码类似:

?
1
????.txt

解决方案:

使用 ls –show-control-chars 命令来强制使用控制台字符编码显示文件名,即可查看中文文件名。 
为了方便使用,可以编辑 C:\Git\etc\git-completion.bash 文件,添加如下一行:

?
1
alias ls= "ls --show-control-chars"

4.在Git Gui中查看UTF-8编码的文本文件时

乱码类似:

?
1
锘夸腑鏂囨枃妗£

解决方案:

在Bash提示符下输入:

?
1
git config --global gui.encoding utf- 8

注:通过上述设置,UTF-8编码的文本文件可以正常查看,但是GBK编码的文件将会乱码,所以还是没有从根本上解决问题。

可行的方法之一为:将所有文本文件的编码统一为UTF-8或GBK,然后设置相应的gui.encoding参数为utf-8或gbk。

注:本文非原创。


本博主加:

1、etc\gitconfig:

[svn]
     pathnameencoding = gbk

说明:打开 Git 环境中的中文支持。pathnameencoding设置了文件路径的中文支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值