文档章节

解决git在Windows下的乱码问题--解决代码从git 拉下来之后中文乱码的问题

Oscarfff
 Oscarfff
发布于 2016/08/22 17:04
字数 498
阅读 323
收藏 0

Contents

  1. 1. 设置 Git 支持 utf-8 编码
  2. 2. 让 ls 命令可以显示中文名称

在Linux及托管网站上默认的编码都是utf-8,而Windows系统默认编码不是采用utf-8,所以Git 客户端在Windows下总是会有一些问题。一个解决方案就是通过设置git编码为utf-8。

 

设置 Git 支持 utf-8 编码

在命令行下输入以下命令:

1
2
3
4
5
6
$ 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 编码

以上命令等效于:
在 etc\gitconfig 中添加

[core]
    quotepath = false
[gui]
    encoding = utf-8
[i18n]
    commitencoding = utf-8
    logoutputencoding = utf-


在etc\profile 中添加

export LESSCHARSET=utf-8


说明:

  1. gui.encoding = utf-8 解决在 $ git gui 和 gitk 里中文乱码。如果发现代码中的注释显示乱码,可以设置项目根目录中.git/config文件添加
    1
    2
    [gui]
        encoding = utf-8
  2. i18n.commitencoding = utf-8 设置 commit log 提交时使用 utf-8 编码,可避免服务器上乱码,同时与Unix上的提交保持一致!
  3. i18n.logoutputencoding = gbk 使得在 $ git log 时编码设置为 utf-8
  4. export LESSCHARSET=utf-8使得 $ git log 可以正常显示中文(配合i18n.logoutputencoding 的设置)

让 ls 命令可以显示中文名称

修改 etc\git-completion.bash 文件:

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

这样设置后,基本可以解决中文显示的问题。

本文参考了解决 Git 在 windows 下中文乱码的问题MsysGit乱码与跨平台版本管理 

另外也可以参考博文

http://xstarcd.github.io/wiki/shell/git_chinese.html

本文转载自:http://howiefh.github.io/2014/10/11/git-encoding/

Oscarfff
粉丝 73
博文 816
码字总数 97116
作品 0
崇明
后端工程师
私信 提问
Windows 下 msysgit 中文配置

一、 概述 1. 参考文章 《git乱码解决方案汇总》 《另类方法解决Windows下git-bash中文输入的乱码问题》 2. 相关软件 Git for Windows msysgit:msysgit是Git 版本控制系统在 Windows 下的版...

千一
2013/08/09
2.6K
3
git status 显示中文和解决中文乱码

目录 git status 显示中文和解决中文乱码 解决git status不能显示中文 解决git bash 终端显示中文乱码 通过修改配置文件来解决中文乱码 git status 显示中文和解决中文乱码 解决git status不...

铁乐猫
2018/08/17
0
0
msysGit 中文环境配置及跨平台开发注意事项

注:因从 Git V1.7.10 开始引入了 Unicode 支持,所以在此版本之前会出现的乱码问题可能在之后的版本则不需要设置,但仍存在一些乱码问题,因此我仍然强烈推荐与 mintty 配合使用。 Git 是一...

osc前美工
2013/09/03
1K
1
Git跨平台中文乱码临时解决方案

Git 是一个非常优秀的分布式版本控制系统,最初为Linux Kernel版本管理进行量身定做。优点是,和其他版本控制系统相比,稳定,速度快,跨平台,易学易用,无需要花费成本。更多优点请点击阅读...

怪蜀黍
2012/04/16
2.3K
4
msysgit 中文乱码问题解决方法

msysgit安装好后处理中文是有问题的:ls中文目录/文件名乱码;提交中文的log,push到服务器上会乱码;git log查看服务器pull过来的log乱码。 1、ls命令列出的中文目录/文件名正确显示解决方法...

lieefu
2015/07/01
143
0

没有更多内容

加载失败,请刷新页面

加载更多

PostgreSQL参数search_path影响及作用

search_path稍微熟悉PG就会用到,用法这里就不必讲,本篇主要讲它在程序里怎样处理。 1、GUC参数定义 这是个 config_string 参数 {{"search_path", PGC_USERSET, CLIENT_CONN_STATEMENT,...

有理想的猪
53分钟前
8
0
Qt程序各个平台打包发布及安装程序大全

本文链接:https://blog.csdn.net/zhengtianzuo06/article/details/78468111 通用: 1.准备图标 图标可以直接使用一般格式的图片制作, 比如jpg, png等 推荐使用Photoshop制作原始图 推荐使用I...

shzwork
今天
4
0
springboot2.0 maven打包分离lib,resources

springboot将工程打包成jar包后,会出现获取classpath下的文件出现测试环境正常而生产环境文件找不到的问题,这是因为 1、在调试过程中,文件是真实存在于磁盘的某个目录。此时通过获取文件路...

陈俊凯
今天
22
0
BootStrap

一、BootStrap 简洁、直观、强悍的前端开发框架,让web开发更加迅速、简单 中文镜像网站:http://www.bootcss.com 用于开发响应式布局、移动设备优先的WEB项目 1、使用boot 创建文件夹,在文...

wytao1995
今天
10
0
小知识:讲述Linux命令别名与资源文件的区别

别名 别名是命令的快捷方式。为那些需要经常执行,但需要很长时间输入的长命令创建快捷方式很有用。语法是: alias ppp='ping www.baidu.com' 它们并不总是用来缩短长命令。重要的是,你将它...

老孟的Linux私房菜
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部