转:git windows中文 乱码问题解决汇总
it的Windows版本Msysgit对中文的支持不够好 。
当使用时,会出现以下三种情况的中文乱码:
下面的几个文件都在git安装目录下文件夹etc内。
1.ls不能显示中文目录
解决办法:在git/git-completion.bash中增加一行:
alias ls='ls --show-control-chars --color=auto'
2.git commit不能提交中文注释
(错误类似:
D:\versionControlGit\gitLearn>git commit -m "第一次提交README"
Warning: commit message does not conform to UTF-8.
You may want to amend it after fixing the message, or set the config
variable i18n.commitencoding to the encoding your project uses.
)
解决办法:修改git/inputrc中对应的行:
set output-meta on
set convert-meta off
3.git log无法显示中文注释
解决办法:在git/profile中增加一行:
export LESSCHARSET=iso8859
上面的方法不是很好,一般推荐用utf-8编码。
在MsysGit中,使用git log显示提交的中文log乱码。
解决方案:
设置git gui的界面编码
git config --global gui.encoding utf-8
设置 commit log 提交时使用 utf-8 编码,可避免服务器上乱码,同时与linux上的提交保持一致!
git config --global i18n.commitencoding utf-8
使得在 $ git log 时将 utf-8 编码转换成 gbk 编码,解决Msys bash中git log 乱码。
git config --global i18n.logoutputencoding gbk
使得 git log 可以正常显示中文(配合i18n.logoutputencoding = gbk),在 /etc/profile 中添加:
export LESSCHARSET=utf-8 参考:
安装
设置(以下需要修改的文件,均位于 git 安装目录下的 etc/ 目录中)
2.1. 让 Git 支持 utf-8 编码
在命令行下输入以下命令:
$ git config --global core.quotepath false # 显示 status 编码
$ git config --global gui.encoding utf-8 # 图形界面编码
$ git config --global i18n.commit.encoding utf-8 # 提交信息编码
$ git config --global i18n.logoutputencoding utf-8 # 输出 log 编码
$ export LESSCHARSET=utf-8
# 最后一条命令是因为 git log 默认使用 less 分页,所以需要 bash 对 less 命令进行 utf-8 编码
2.2. 让 ls 命令可以显示中文名称
修改 git-completion.bash 文件:
# 在文件末尾处添加一行
alias ls="ls --show-control-chars --color"
经过以上折腾之后,基本可以解决中文显示的问题。唯一的麻烦在于输入中文字符时会显示乱码,目前还没有完美的解决方案。
以下描述一个可用的临时方案:
前提条件:
git commit时,不用-m参数,也就是不在命令行下直接输入提交信息,而是敲回车,让 vim 来接管进入 vim 后,按
i键进入编辑模式,然后输入提交信息。(可多行)输入完成后按
esc退出编辑模式,然后输入:wq,也就是写入+退出,即可。如果进入 vim 后发现不能输入中文,那么先按
esc退出编辑模式,然后输入::set termencoding=GBK,即可。(也可能是 GB2312,都试一下)
还好我们有 GUI
实在搞不定命令行的童鞋,请直接使用各种 GUI 工具吧!
使用 eclipse IDE的,可以安装 EGit 插件
不使用 IDE 的,可以搜索一个叫做 SmartGit 的 GUI 客户端
That's All!
我试过上面的vim输入,还是乱码。
经过多次使用,github只能支持utf-8格式的文件,我们在git 用touch创建的格式是ansi格式,上面上去会乱码:
类似下面的:
转:git windows中文 乱码问题解决汇总的更多相关文章
- Git GUI中文乱码问题解决方法
使用Git GUI的查看代码的时候,会出现中文乱码: 在乱码的区域点击鼠标右键,选择Encoding,然后选择Unicode(UTF-8),乱码问题解决:
- tomcat7.0在centos7下中文乱码问题解决汇总
1. 系统级的中文设置 Centos7跟之前的6和5安装的中文字符命令都不一样 [root@iZ25bdzgev8Z ~]# locale #查看当前系统的语言环境 [root@iZ25bdzgev8 ...
- 【Git】windows上git命令中文乱码的问题
windows上git命令中文乱码的问题解决 1.打开git bash快捷方式启动 2.右键 options 3.进入text选项卡,选中中文 和UTF-8 4.应用 测试[中文正常显示] 尝试打开文 ...
- windows下git bash中文乱码解决办法
一.解决办法1:(直接上图) 1.在git bash下,右键 出现下图,选择options: 2.选择“Text” 3.将“Character set”设置为 UTF-8 转:windows下git ...
- Ubuntu下Eclipse中文乱码问题解决(转)
Ubuntu下Eclipse中文乱码问题解决 把Windows下的工程导入到了Linux下Eclipse中,由于以前的工程代码,都是GBK编码的(Windows下的Eclipse 默认会去读取系统的编 ...
- 【转】asp.net Cookie值中文乱码问题解决方法
来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqia ...
- [Git]2018-10 解决git cmd中文乱码问题
2018年10月12日 莫名其妙出现cmd下git log中文乱码问题,显示一堆<E4><A8>之类的乱码.git bash却一切正常. 怀疑是Windows系统升级出现的不兼 ...
- python3 库pandas写入csv格式文件出现中文乱码问题解决方法
python3 库pandas写入csv格式文件出现中文乱码问题解决方法 解决方案: 问题是使用pandas的DataFrame的to_csv方法实现csv文件输出,但是遇到中文乱码问题,已验证的正确 ...
- putty中文乱码问题解决
###putty中文乱码问题解决 用putty从windows xp连接ubuntu server或者FreeBSD系统,其中中文部分乱码,经常遇到这个问题的时候,会觉得很郁闷.现共享一些解决这个问题 ...
随机推荐
- SharePoint Secure Store Service(SSSS)的使用(一)
SSS在案例中的应用: SSS介绍 SSS部署 SSS应用 http://www.cnblogs.com/renzh/archive/2013/03/31/2990280.html 创建.部署.应用S ...
- JqueryMobile新手问题大全
Jquery mobile 新手问题总汇 34 2013-04-22 / 分类:JqueryMobile / 标签:JqueryMobile,Jqm 此文章将会持续更新,主要收录一些新手比较常见的问题 ...
- 通过SSIS监控远程服务器磁盘空间并发送邮件报警
本文直接参考了博客园软件人生的文章操作的,写在这里只为做个记录. 到公司这边先把两个报表服务器接收了. 为防止宕机,部署个磁盘警告的SSIS包. Step 1 建立两个变量来接收和写入磁盘容量 Ste ...
- Java之JDOM生成XML和解析
一.生成XML文件 1.JDOM是对Java原始的类进行了封装.让解析XML文件变得很方便 2.创建一个XML文件的根节点: Element root = new Element("HD&q ...
- 五毛的cocos2d-x学习笔记02-基本项目源码分析
class AppDelegate : private cocos2d::Application private表示私有继承,cocs2d是一个命名空间.私有继承下,Application类中的pri ...
- linux c: 静态库和动态库的生成和使用
场景: main函数需要两个接口,一个求和函数,一个打印函数. int sum(int i, int j); 求两个int数字的和. void show(int i, char* name); 打印i ...
- JavaSE学习总结第05天_Java语言基础1
05.01 方法概述和格式说明 简单的说:方法就是完成特定功能的代码块 在很多语言里面都有函数的定义,函数在Java中被称为方法 格式: 修饰符返回值类型方法名(参数类型参数名1,参数类型参数名2 ...
- php的迭代器
接口Iterator 主要需要实现的方法: abstract public mixed current ( void ) abstract public scalar key ( void ) abs ...
- html基本框架
- 转:按需加载html 图片 css js
按需加载是前端性能优化中的一项重要措施,按需加载是如何定义的呢?顾名思义,指的是当用户触发了动作时才加载对应的功能.触发的动作,是要看具体的业务场景而言,包括但不限于以下几个情况:鼠标点击.输入文字. ...