Git for windows 中文乱码解决方案

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

乱码类似:

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

解决方案:

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

set output-meta off
set convert-meta on

改为:

set output-meta on
set convert-meta off

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

乱码类似:

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

解决方案:

在Bash提示符下输入:

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文件,添加如下一行:

export LESSCHARSET=utf-8

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

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

乱码类似:

????.txt

解决方案:

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

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

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

乱码类似:
锘夸腑鏂囨枃妗£

解决方案:

在Bash提示符下输入:

git config --global gui.encoding utf-8

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

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

时间: 2024-10-08 23:41:43

Git for windows 中文乱码解决方案的相关文章

[Shell编译]Windows Cmd显示中文乱码解决方案

chcp 65001  就是换成UTF-8代码页 chcp 936 可以换回默认的GBK chcp 437 是美国英语[Shell编译]Windows Cmd显示中文乱码解决方案

基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案

基于Windows环境下cmd/编译器无法输入中文,显示中文乱码解决方案 两个月前做C++课设的时候,电脑编译器编译结果出现了中文乱码,寻求了百度和大神们,都没有解决这个问题,百度上一堆解释是对编译器进行设置之类的,结果没有一个有效果,暑假学习了用Dos来开发Java程序,输入cmd命令中dir(directory)进行查询操作时,显示了一堆中文乱码,原本是想重装系统的,因为电脑里面重要东西有点多,所以自己花了一段时间捣鼓了一下电脑,终于解决了如上两个问题,现在心里很开心,附上如下两幅图: cm

Windows 10 powershell 中文乱码解决方案

Windows 10 powershell 中文乱码解决方案 Intro 我装的系统是英文版的 win 10 操作系统,最近使用命令行测试接口,发现中文显示一直异常, 使用网上的各种解决方案都没有效果,update 注册表,设置 codepage 为 utf8(65001) 都没什么卵用. 后来发现另外一台机器上是正常的(中文操作系统),chcp 查看使用的 codepage 是 936,网上查询之后 936 对应的是 简体中文,于是配置在 powershell 命令行启动的时候配置 codep

PHP函数imagefttext( )因--enable-gd-jis-conv引发中文乱码解决方案

阐述 最近几天与公司的PHP开发人员测试即将上线的WEB站点(致难忘的青春岁月:http://hd.gfan.com),在内网测试环境没有任何问题,但在线上测试时,发现通过PHP的GD函数 imagefttext()引用FreeType字体将文本信息写入图像时,出现中文乱码:对此问题,我们在整个排查过程中,总结了三个能引起中文乱码的原因,如下: 1.Linux系统字符集是否支持中文? [email protected]:~#locale LANG=en_US.UTF-8 LANGUAGE=en_

boost::xml——基本操作以及中文乱码解决方案

下面是本人使用boost库的xml部分的基础操作,并且解决对于大家使用boost库读写中文xml内容出现的乱码问题. 1.实现boost库xml基本操作2.解决boost对xml中中文乱码问题3.实现普通字符串和宽字符串的傻瓜切换(模仿tchar.h)4.代码运行环境为VS2010,需要导入boost库才能正常运行5.VS2010运行时可能会发生错误.例如:cl.exe 或者 cvtres.exe 报错. 解决办法就是重新打开项目或者切换其它正常项目运行一下(反正我是这么解决的) 下面是源码部分

客户端cmd打开mysql,执行插入中文报错或插入中文乱码解决方案

最近在制作一个安装包,需要安装的时候执行mysql脚本儿,做了一个批处理,但是发现总是执行到 插入中文的时候报错,或者插入中文是乱码. 网上查了好多资料,说是把编码改成GBK什么的,终究还是不成功. 最后经过多次测试,现把解决方案分享给大家. 第一步:打开mysql中的配置文件,my.ini,看一看配置文件中 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 看是不是这样配置的.因为utf8 是国际通用的,

页面传参中文乱码解决方案

jsp页面传递参数到servlet,只要参数有中文就是乱码,大多数是??????乱码,尝试了网上比较普遍的好多种办法都不行,最后加了一句话解决掉,分享给大家. 1.打开tomcat安装目录 2.找到conf文件夹 3.打开里面的server.xml 4.找到 <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443

ubuntu下中文乱码解决方案(全)

ubuntu下中文乱码解决方案(全) UBUNTU linux中解压zip 中文乱码 (unzip) 有2种方式解决问题: 1. 通过unzip行命令解压,指定字符集 unzip -O CP936 xxx.zip (用GBK, GB18030也可以) 有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说明. 2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件 /etc/environment中加入2行 UNZIP="-O

aspx页面,中文乱码解决方案

由于文件编码方式编码方式不统一出现样式中文乱码解决方案: 今天碰到的问题:页面字体样式设置的'微软雅黑',可页面没引用.我调试看到样式出现中文乱码了 这种问题,就需要转换文件的编码方式,如下两步即可解决 第一步:在visual studio 2010中,“文件”菜单“Default.aspx另存为”命令,出现“另存文件为”对话框,点击“保存”按钮右边的小三角,“编码保存”命令,然后选择gb2312 第二步:在web.config里设置<globalization requestEncoding=