本文记录了 Git 使用中遇到过的一些问题和一些小技巧
使用技巧
设置用户名和邮箱
- 邮箱
git config --global user.email "admin@yumc.pw"
- 用户名
git config --global user.name "502647092"
- 邮箱
保存账号密码 避免每次推送输入
- 执行
git config --global credential.helper store
- 执行
如果
Windows
和Linux
下协同开发 需要配置换行符转换- 检出 CRLF 提交 LF
git config --global core.autocrlf true
(推荐) - 检出不转换 提交 LF
git config --global core.autocrlf input
- 检出提交均不转换换行符
git config --global core.autocrlf false
- 当然还可以用
.gitattributes
设置单个仓库内部 不同文件类型的换行符1
2
3
4
5
6
7
8
9
10
11
12
13
14# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.c text
*.h text eol=lf
# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
- 检出 CRLF 提交 LF
常见问题
提示
fatal: unable to access 'https://xxxxxxxxx': SSL certificate problem: unable to get local issuer certificate
- 原因: 服务器SSL证书不被信任
- 解决方案
- 输入
git config --global http.sslVerify false
关闭 SSL 证书验证
- 输入
提示
fatal: unable to access 'https://xxxxxxxxx': SSL connect error
- 原因: SSL链接建立失败 修改CURL参数
- 解决方案1 调整CURL
- 输入
GIT_CURL_VERBOSE=1 git push origin master
之后应该可以成功 - 同时也可以把
GIT_CURL_VERBOSE=1
设置为系统环境变量
- 输入
- 解决方案2 修改ssl版本 Github无法连接的问题
- 更新
GIT
到最新版本 - 设置ssl的版本
git config --global http.sslversion tlsv1
- 更新
提示
error: non-monotonic index .git/objects/pack/._pack-*.idx
其中 * 是一个hash值字串- 原因: 需要重建文件
- 解决方案
- 输入
rm .git/objects/pack/pack-*.idx
其中 * 是一个提示的那个 - 输入
git index-pack .git/objects/pack/pack-*.pack
重建索引 其中 * 是一个提示的那个
- 输入
提示
xxxx\mingw64\bin\sh.exe: *** Couldn't reserve space for cygwin's heap
- 原因: Dll 问题 下面方案不行 那就重启电脑
- 解决方案
- 打开 Git-Bash
- 输入
cd /mingw64/bin
- 输入
rebase.exe -b 0x50000000 msys-1.0.dll
提示
git-remote-https: error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory
- 原因: 类库没有安装
- 解决方案
- 输入
yum install -y curl-devel
- 输入
ln -s /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4
- 输入
参考资料