處理方式:
Git中的AutoCRLF與SafeCRLF換行符問題
不同操作系統下,處理行尾結束符的方法是不同的:
windows下:CRLF(表示句尾使用回車換行兩個字符,即windows下的"\r\n"換行)
unix下:LF(表示句尾,只使用換行)
mac下:CR(表示只使用回車)
AutoCRLF:
core.autocrlf是git中負責處理line ending的變量,可以設置3個值:true,false,inout。
1、設置為true【config --global core.autocrlf true】
當設置成true時,這意味着你在任何時候添加(add)文件到git倉庫時,git都會視為它是一個文本文件(text file)。
它將把crlf變成LF。
2、設置為false【config --global core.autocrlf false】
當設置成false時,line endings將不做轉換操作。文本文件保持原來的樣子。
3、設置為input時,添加文件git倉庫時,git把crlf編程lf。當有人Check代碼時還是lf方式。因此在window操作系統下,不要使用這個設置。
SafeCRLF:
1、拒絕提交包含混合換行符的文件
【git config --global core.safecrlf true】
2、允許提交包含混合換行符的文件
【git config --global core.safecrlf true】
3、提交包含混合換行符的文件時給出警告
【git config --global core.safecrlf warn】