Git的使用(四)——解决中文乱码

      Git Bush安装之后,如果什么都不设置的话,windows下ls回车之后一般情况下中文都会乱码的。在这就先解决一下这个问题

打开Git Bash

 进入目录:$ cd /etc

 1. 编辑 gitconfig 文件:$ vi gitconfig

      文件中增加内容

    [gui]  
    encoding = utf-8 #代码库统一使用utf-8  
    [i18n]  
    commitencoding = GB2312 #log编码,window下默认gb2312,声明后发到服务器才不会乱码  
    [svn]  
    pathnameencoding = GB2312 #支持中文路径  

2. 编辑 git-completion.bash 文件:$ vi git-completion.bash

    最下面添加

  alias ls='ls --show-control-chars --color=auto' #ls能够正常显示中文 

3. 编辑 inputrc 文件:$ vi inputrc

    修改 output-meta 和 convert-meta 属性值

    set output-meta on #bash中可以正常输入中文  
    set convert-meta off  

4. 编辑 profile 文件:$ vi profile

    最下面添加

    export LESSHARSET=utf-8  

5. 重新编译配置文件,使文件生效

    $ source git-completion.bash
    $ source inputrc
    $ source profile
   OK,这样就好了。





### Git 中文文件名乱码解决方案 在处理 Git 上传过程中出现的中文文件名乱码问题时,可以通过调整 Git 的全局配置来解决问题。以下是具体的解决方法: #### 修改 Git 配置 通过设置 `core.quotepath` 参数为 `false`,可以有效防止 Git 对非 ASCII 字符进行转义操作,从而避免中文文件名乱码的情况发生。 ```bash git config --global core.quotepath false ``` 此命令的作用是禁用路径中的特殊字符转义功能,使得 Git 能够正确识别并显示 UTF-8 编码的文件名[^5]。 #### 设置系统环境变量 如果仍然存在乱码问题,则可能需要进一步检查系统的区域和语言设置以及代码页配置。对于 Windows 系统,建议将控制台默认使用的 ANSI 编码切换至 UTF-8 编码模式。具体操作如下: 1. 打开 CMD 命令提示符; 2. 输入以下指令以更改当前会话的活动代码页到 UTF-8: ```bash chcp 65001 ``` 该命令能够临时改变终端编码方式为 Unicode (UTF-8)[^3]。 另外,在某些情况下还需要确认是否启用了 Beta 功能——“使用 Unicode UTF-8 提供全球语言支持”的选项位于 **控制面板 -> 区域 -> 更改系统区域设置** 下面[^1]。 #### 检查 RAR 或 ZIP 工具的影响 值得注意的是,当涉及到跨平台解压操作时(比如从 Linux 平台上查看由 Windows 创建的压缩包),也可能引发类似的文件名称解析错误。这是因为不同操作系统之间可能存在不同的默认编码标准差异所致。因此,在传输前最好统一采用一致的标准来进行打包与拆封作业[^4]。 综上所述,针对 Win10 及其他版本下的 cmd 和 git bash 上发生的此类状况,上述措施通常足以应对大多数实际场景需求。 ### 示例验证过程 假设有一个名为 “测试文档.docx” 的文件被提交到了远程仓库中,执行下面的操作步骤即可检验修复成果: ```bash # 初始化一个新的本地存储库 mkdir test-repo && cd $_ git init . # 添加含有中文名字的样本资料进去 echo "Sample content." > 测试文档.docx git add . git commit -m "Add Chinese named file" # 查看状态信息 git status ``` 此时应该可以看到正常的中文文件列表而不会再有奇怪符号替代原本的文字描述了。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值