分享

Cygwin&Git中文支持

 waston 2017-10-20
1.在下面的文件末尾添加一行。
C:\cygwin\home\cico\.bash_profile
export LESSCHARSET=latin1
ps:控制源代码(例如java文件)在Cygwin界面输出时,不做特殊处理(不要用UTF-8的规则将字节拼成字,utf-8用三个字节解释汉字,GBK用两个字节)。

2.打开Cygwin,对话框“右键”->option->text->locale character set
选择 zh_CN,GBK
ps:配合第一条,告诉Cygwin,界面上没作特殊处理的字符,按照GBK的规则解释界面上的字节。

3.Cygwin bin下的git设置
$ git config --system i18n.commitEncoding utf-8
$ git config --system i18n.logoutputencoding utf-8
重启Cygwin。

解决的问题(Cygwin1.7.17-1):
$ git diff 源文件是GBK编写时,里面的中文注释不会再乱码。
$ git commit -m "XX" 中文的提交说明“XX”会以utf-8格式,提交到版本库。
$ git log 中文的提交说明(utf-8格式的提交说明;若当前提交说明用了Cygwin默认编码来写,则会乱码),不会乱码。
若当前库的 $ git config i18n.logoutputencoding 是 gbk,这个库里面的utf-8格式的提交不会乱码。
ps:第三条的 提交说明的编码设成utf-8是有好处的。这里体现的是在windows下兼容了GBK编码;其实更重要的是在跨平台的兼容,以及利用GUI工具做大量细致的merge,diff动作时不会乱码。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多