GIT常见问题集锦
GIT中文乱码问题解决
方案
进入git安装目录,改一下配置就可以基本解决:
1、etc\gitconfig:
[gui]
encoding = utf-8
[i18n]
commitencoding = utf-8
[svn]
pathnameencoding = utf-8
说明:打开 Git 环境中的中文支持。pathnameencoding设置了文件路径的中文支持。
2、etc\git-completion.bash:
alias ls='ls --show-control-chars --color=auto'
说明:使得在 Git Bash 中输入 ls 命令,可以正常显示中文文件名。
3、etc\inputrc:
set output-meta on
set convert-meta off
说明:使得在 Git Bash 中可以正常输入中文,比如中文的 commit log。
4、etc\profile:
export LESSCHARSET=utf-8
说明:$ git log 命令不像其它 vcs 一样,n 条 log 从头滚到底,它会恰当地停在第一页,按 space 键再往后翻页。这是通过将 log 送给 less 处理实现的。以上即是设置 less 的字符编码,使得 $ git log 可以正常显示中文。其实,它的值不一定要设置为 utf-8,比如 latin1 也可以……。还有个办法是 $ git –no-pager log,在选项里禁止分页,则无需设置上面的选项。
1使用git diff时,查看TXT里的中文是乱码。
原因是用记事本记录的文字不是UTF-8格式的,需要用NOTEPAD++,把文件格式保存为UTF-8即可。
原因:
git diff接受的编码格式utf-8;而filename又是以gb2312格式编写的。
方法1:解决办法:
在vim中将filename另存为utf-8格式,或者用NOTEPAD++,把文件格式保存为UTF-8即可。
方法2
git diff 6bded8d0c1fe1746c122121217dc0c88667091089 a9b87b07908a446a5471b233232ade2dbd0734d8 --name-only
"markdown/2016/07/\345\210\206\346\224\257\346\265\213\350\257\225.md"
执行如下命令,修改core.quotepath参数即可。
git config --global core.quotepath false
解决方案:
echo $LANG;
输出结果为空
执行export LANG="zh_CN.UTF-8"命令,问题解决。
GIT处理超大大文件时拉取报错或推送报错
在使用git做为版本库的时候,遇到一个问题,那就是超大文件无法上传。git我不仅仅是拿来做代码的备份,甚至一些文档,我也拿它来处理,所以这些带有图片的文档就让我很郁闷了。它们可是都有着30M左右,甚至更大。怎么办?
拉取代码报错
Cloning into XXXX...
remote: Couting objects: 125627, done.
remote: Compressing objects: 100% (47061/47061), done.
fatal: Out of memory, malloc failed (tried to allocate 1941159936 bytes)
提交代码报错
fatal: early EOF
fatal:
index-pack failed
其实很简单,在项目的.git/config里加入:
XML/HTML代码
-
[pack]
-
threads = 1
-
deltaCacheSize = 128m
-
packSizeLimit = 128m
-
windowMemory = 128m
-
[core]
-
packedGitLimit = 128m
-
packedGitWindowSize = 128m
如果这个大小你觉得还不够。你还可以更调大一点。这回就没大事喽。
git bash下中文乱码解决办法:
一.解决办法1:(直接上图)
1.在git bash下,右键出现下图,选择options:
2.选择"Text"
3.将"Character set"设置为 UTF-8
二.解决办法2:(在上述办法1中,如果在git bash中,右键没有菜单的情况下)
进入git安装目录,通常是C:\Program Files (x86)\Git\
1. 编辑etc\gitconfig文件,在文件末尾增加以下内容:
[gui]
encoding = utf-8 #代码库统一使用utf-8
[i18n]
commitencoding = utf-8 #log编码
[svn]
pathnameencoding = utf-8 #支持中文路径
2. 编辑etc\git-completion.bash文件,在文件末尾增加以下内容:
alias ls='ls --show-control-chars --color=auto' #ls能够正常显示中文
3. 编辑etc\inputrc文件,修改output-meta和convert-meta属性值:
set output-meta on #bash可以正常输入中文
set convert-meta off
4. 编辑profile文件,在文件末尾添加如下内容:
export LESSHARESET=utf-8