Skip to main content

常见 git 问题

文件名大小写问题#

由于 git 默认对大小写不敏感,如果文件名从小写变成了大写之后,无法发现文件有变化导致没有提交到仓库。

更可怕的是 mac 也是大小写不敏感,经常出现到本地可以运行,到服务器就执行错误的情况。

为此,我们最好把 git 的默认大小写关闭。

下面的命令。

$ git config core.ignorecase false                                                  ## 对当前项目生效$ git config --global --add core.ignorecase false                       ## 对全局生效

windows 下换行问题#

在 Windows 上创建或者克隆代码,开发或者提交时,可能出现如下错误:

Delete `␍`eslint(prettier/prettier)

原因如下:

由于历史原因,windows 下和 linux 下的文本文件的换行符不一致。

  • Windows 在换行的时候,同时使用了回车符 CR(carriage-return character) 和换行符 LF(linefeed character)
  • 而 Mac 和 Linux 系统,仅仅使用了换行符 LF
  • 老版本的 Mac 系统使用的是回车符 CR
WindowsLinux/MacOld Mac(pre-OSX
CRLFLFCR
'\n\r''\n''\r'

因此,文本文件在不同系统下创建和使用时就会出现不兼容的问题。

解决方案如下:

设置全局 git 文本换行

$ git config --global core.autocrlf false

注意:git 全局配置之后,你需要重新拉取代码。

参考: