git LF 和 CRLF换行的问题

错误提示:

warning: LF will be replaced by CRLF in xxx The file will have its original line endings in your working directory

image-20200605121205849

原因

注解:

 **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,input。

(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操作系统下,不要使用这个设置。

一般设置

Git设置
git config --global core.autocrlf false
git config --global core.safecrlf true
含义:
AutoCRLF
#提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true

#提交时转换为LF,检出时不转换
git config --global core.autocrlf input

#提交检出均不转换
git config --global core.autocrlf false
SafeCRLF
#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true

#允许提交包含混合换行符的文件
git config --global core.safecrlf false

#提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn
posted @ 2020-06-05 13:44  makalo  阅读(403)  评论(1编辑  收藏  举报