Git提示“warning: LF will be replaced by CRLF

  1. 问题描述:
    Window平台下使用“git add .”出现“warning: LF will be replaced by CRLF”的提示:
    {W0_C%W6YIJL2`OD2%$ZXGM.png
  2. 问题解决:
    那么遇到这种问题该如何解决呢??
git config --global core.autocrlf true //注意--前面有空格!!

如果我们目前是Window平台并出现该警告,啥也别做就行,虽然这个警告难看,但这个警告能保证我们项目团队正常跨系统git操作代码.
因为git的Windows 客户端基本都会默认设置 core.autocrlf=true(我们可通过git config core.autocrlf命令查询我们的Windows上该属性是否默认true.如不是true,通过config --global core.autocrlf true命令设置该属性为true),而“core.autocrlf=true”有以下3个功能来避免我们出错:
(A)在“把 modified修改过的文件git add到暂存区stage”时,Git自动把LF转换成CRLF,并给出那条警告”LF will be replaced by CRLF”
(B)在“把modified修改过的文件由暂存区(stage) 提交(commit)到版本库/仓库(repository)”时,Git自动把CRLF转换成LF
©在“用 检出/git checkout切换到指定分支 或 git clone克隆远程版本库”来加载代码时,Git自动把LF转换成CRLF
提到的那句警告:“IF will be replaced by CRLF in ”
这句警告的下面其实还有一句很重要的话:The file will have its original line endings in your working directory.

  1. 问题原因:
    我们在Windows平台下git add任意Windows平台编辑过的代码文本的换行默认都是CRLF,所以一般git add不会出错.但是如果如下的(i)或者(ii)发生了,那我们再进行git add这个LF换行的文件时,会出现这个警告" LF will be replaced by CRLF in …".
    (i)我们的团队成员是Linux/Mac平台并参与了项目的git提交
    (ii)我们Windows平台的某些软件会生成换行是LF的代码文本(如git add的是Webstorm生成的HTML项目中隐藏文件夹.idea中的workspace.xml,这个xml文件换行是LF)
    (1)不同操作系统下,处理行尾结束符的方法是不同的:
    (A)Windows和Dos下:使用回车(CR)和换行(LF)两个字符来结束一行,回车+换行(CR+LF),即“\r\n”;
    (B)Unix和mac下:只使用换行(LF)一个字符来结束一行,即“\n”;
    (最早Mac每行结尾是回车CR 即’\r’,后mac os x 也投奔了 unix)
    (2)Git下处理“换行”(line ending)
    core.autocrlf是git中负责处理line ending的变量,可以设置3个值:true,false,input.
    (A)设置为true【config --global core.autocrlf true】
    当设置成true时,这意味着你在任何时候添加(add)文件到git仓库时,git都会视为它是一个文本文件(text file).
    它将把crlf变成LF.
    (B)设置为false【config --global core.autocrlf false】
    当设置成false时,line endings将不做转换操作.文本文件保持原来的样子.
    ©设置为input时,添加文件git仓库时,git把crlf编程lf.当有人Check代码时还是lf方式.因此在window操作系统下,不要使用这个设置.
  2. 此问题的负面影响
    格式化与多余的空白字符,特别是在跨平台情况下,有时候是一个令人发指的问题.由于编辑器的不同或者文件行尾的换行符在 Windows 下被替换了,一些细微的空格变化会不经意地混入提交,造成麻烦.虽然这是小问题,但会极大地扰乱跨平台协作.
    假如你正在Windows上写程序;又或者你正在和其他人合作,他们在Windows上编程,而你却在其他系统上,在这些情况下,你可能会遇到行尾结束符问题.此问题的全部负面影响如下:
    (1)一个直接后果是,Unix/Mac系统下的一个“多行文本”文件在Windows里打开的话,“多行文本”会变成“一行”.(原因:Unix/Mac换行只用了换行符‘\n’,而Windows的换行要求是回车换行符’\r\n’,因此Unix/Mac中的“多行文本”的换行不符合Windows的规则,所以Windows对这些不符合换行规则的“多行文本”全部按照“没有换行”处理,所以导致“多行文本”会变成“一行”)
    (2)而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号.
    (3)Linux保存的文件在windows上用记事本看的话会出现黑点.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,904评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,581评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,527评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,463评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,546评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,572评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,582评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,330评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,776评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,087评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,257评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,923评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,571评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,192评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,436评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,145评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,127评论 2 352

推荐阅读更多精彩内容