Windows下Git使用報錯:warning:LF will be replaced by CRLF in ××××.××
Windows下Git使用報錯:
warning:LF will be replaced by CRLF in ××××.××(文件名) The file will have its original line ending in your working directory. 翻譯: 在xxx.xx文件中LF將被CRLF替換。 在工作區(working directory)裏,這個文件將會保持它原本的換行符。(line ending:行尾,換行)
註解:
LF:Line Feed 換行
CRLF:Carriage Return Line Feed 回車換行鍵
1、不同操作系統下,處理行尾結束符的方法是不同的:
windows下:CRLF(表示句尾使用回車換行兩個字符,即windows下的"\r\n"換行)
unix下:LF(表示句尾,只使用換行)
mac下:CR(表示只使用回車)
2、Git下處理“換行”(line ending)
core.autocrlf是git中負責處理line ending的變量,可以設置3個值:true,false,inout。
(1)設置為true【config --global core.autocrlf true】
當設置成true時,這意味著你在任何時候添加
它將把crlf變成LF。
(2)設置為false【config --global core.autocrlf false】
當設置成false時,line endings將不做轉換操作。文本文件保持原來的樣子。
(3)設置為input時,添加文件git倉庫時,git把crlf編程lf。當有人Check代碼時還是lf方式。因此在window操作系統下,不要使用這個設置。
綜上,出現上面那個警告的原因是:
windows中的換行符為CRLF,而Linux下的換行符為LF(使用Git命令行Git Bash,實際上就是相當於linux環境
解決方法:
<1>刪除.git 【rm -rf .git】
<2>禁用自動轉換,即將設置:git config --global core.autocrlf false
再重新初始化,並執行添加add操作:
<3>【git init】
<4> 【git add xxx.xx】
Windows下Git使用報錯:warning:LF will be replaced by CRLF in ××××.××