CRLF与LF解析

window和mac的同窗合做开发项目,会出现git提交/拉取时换行符不一致致使,提示 "the text is identical, but the files do not match, newlines”等字样,会出现不少文件发生更改,下面说说换行符引发的这个问题.git

CRLFweb

Carriage-Return Line-Feed的缩写,回车换行的意思ide

  • CR:Carriage Return,对应ASCII 13中转义字符\r,表示回车
  • LF:Linefeed,对应ASCII 10中转义字符\n,表示换行
  • CRLF:Carriage Return & Linefeed,\r\n,表示回车并换行

(ASCII码表里也有用newline, nl表示换行的),据传说,CR、LF最原始的还要追踪到最先到机械打字机时代,CR回到同一行的纸张最左侧的意思,LF表明换一行,将纸张上一一行,两个组合可不就是换行.spa

 

windnow unix mac等平台换行符不一样: unix

 

 

 

能够经过git全局设置修改使用的换行符问题,来支持跨平台合做开发项目(window和mac):blog

1> AutoCRLF开发

#提交时转换为LF,检出时转换为CRLFinput

git config --global core.autocrlf true   it

 

#提交时转换为LF,检出时不转换class

git config --global core.autocrlf input   

 

#提交检出均不转换

git config --global core.autocrlf false

 

2>SafeCRLF

#拒绝提交包含混合换行符的文件

git config --global core.safecrlf true   

 

#容许提交包含混合换行符的文件

git config --global core.safecrlf false   

 

#提交包含混合换行符的文件时给出警告

git config --global core.safecrlf warn

相关文章
相关标签/搜索