Git - LF Will Be Replaced by CRLF
Ashok Chapagai
2021年12月24日
LF 代表 Line Feed
,这是一种在基于 UNIX 的系统中表示行尾的方式。但是在基于 Windows 的系统中,一行通常用 CR(回车)和换行(LF)来表示。
如果你使用基于 UNIX 的系统(macOS)推送代码,则会出现此问题,代码将以 LF 结尾。
如果你使用 Windows 机器,修改代码并提交,它将被 CRLF 替换,因为 git 很聪明并且不希望你在 Windows 操作系统上使用 LF。
同样,如果警告说 LF Will Be Replaced by CRLF
,则会发生相反的情况。提交/切换后,你将丢失基于 Windows 的 CRLF,LF 将替换它。
修复 Git 中的 LF Will Be Replaced by CRLF
警告
修复警告的一种方法是更改位于 git 安装路径中的配置文件。code.autocrlf
的值存储在位于 %ProgramFiles(x86)%\git\etc\gitconfig
或 ProgramFiles\git\etc\gitconfig
和 /etc/gitconfig
的 gitconfig
文件中基于 Linux/Unix 的操作系统。
但是,我们可以在不同情况下解决此问题:
如果你希望在基于 Unix 的操作系统上使用该项目,你应该将 core.autocrlf
的值设置为 true
如果你希望仅在 Windows 下使用该项目,则该标志应设置为 false
。
但是,在基于 Unix 的操作系统中,你可以根据需要禁用 core.autocrlf
。
在进行修改之前,你可以使用以下命令检查当前设置,
git config core.autocrlf
该命令将给出 true
或 false
或 input
的输出,你可以根据需要进行更改。
修复整个系统上的 LF Will Be Replaced by CRLF
警告
要解决系统范围内的问题,你可以使用,
git config --system core.autocrlf false
修复每个用户的 LF Will Be Replaced by CRLF
警告
要根据用户解决问题,你可以使用,
git config --global core.autocrlf false
只在项目中修复 LF Will Be Replaced by CRLF
的警告
要解决特定项目的问题,
git config --local core.autocrlf false
作者: Ashok Chapagai