Git 暂存文件警告信息:warning: LF will be replaced by CRLF in XXX.java.
git add .
- 在使用 Git 时,执行上述指令,暂存文件到暂存区时,出现如下警告信息
warning: LF will be replaced by CRLF in XXX.java.
The file will have its original line endings in your working directory
问题原因
-
这个警告信息表示检测到文件中使用的是 LF 换行符,但根据 Git 配置,提交到工作区时会自动转换为 CRLF(Windows 友好),原始文件在仓库中仍保留 LF
-
简单来说就是 Git 要把 LF 换成 CRLF,因为在 Windows 上查看,但实际存储还是用 LF
-
这是因为 Git 的
core.autocrlf
设置导致的,当设置了core.autocrlf = true
(Windows 默认),Git 会在检出代码时把 LF 转成 CRLF,而在提交时把 CRLF 转回 LF -
可以使用指令
git config core.autocrlf
查看当前配置 -
这个警告信息是用于提示的,它不会影响代码功能或提交本身
- 不同系统的换行符如下
系统 | 换行符 |
---|---|
Unix / Linux / macOS | LF,\n |
Windows | CRLF,\r\n |