CRLF和LF在跨平臺(tái)工作時(shí)候帶來(lái)的煩惱以及解決方法

在使用git提交代碼時(shí)候,有時(shí)候會(huì)遇到一個(gè)問(wèn)題凉驻,就是自己明明只修改了其中幾行腻要,提交上去以后發(fā)現(xiàn)整個(gè)文件都被修改了,在設(shè)置了格式風(fēng)格以后還會(huì)有提交不上去的情況沿侈,這個(gè)時(shí)候經(jīng)常讓人摸不到頭腦闯第,其實(shí)就是CRLF和LF在作怪

CRLF LF CR 都是什么意思:

  • CRLF: 是carriagereturnlinefeed的縮寫(xiě)。中文意思是回車(chē)換行缀拭。

  • LF: 是line feed的縮寫(xiě)咳短,中文意思是換行。

  • CR: 是carriagereturn的縮寫(xiě)蛛淋。中文意思是回車(chē)咙好。

簡(jiǎn)單的換行回車(chē)為什么會(huì)引出這么多的問(wèn)題呢,關(guān)鍵在于操作系統(tǒng)之間的分歧:

早期的mac系統(tǒng)使用CR當(dāng)做換行褐荷,現(xiàn)在也已經(jīng)統(tǒng)一成了LF

Unix(包含現(xiàn)在大量使用的linux)系統(tǒng)使用LF

windows系統(tǒng)使用LFCR當(dāng)做換行(自作聰明的兼容性勾效??)

也正是因?yàn)椴煌到y(tǒng)的分歧,在多人協(xié)作共同開(kāi)發(fā)的時(shí)候层宫,可能導(dǎo)致提交代碼時(shí)候產(chǎn)生問(wèn)題杨伙。

解決方法:

Android Studio內(nèi)部可以設(shè)置不同模式,具體位置在setting-->搜索code style見(jiàn)下圖:

設(shè)置格式

其中有四個(gè)選項(xiàng)System-Dependent LF CR CRLF萌腿,默認(rèn)是System-Dependent限匣,也就是根據(jù)你是什么系統(tǒng)選擇什么類(lèi)型,如果想要自定義的話(huà)可以在這里設(shè)置毁菱,以后創(chuàng)建的新代碼也默認(rèn)用設(shè)置的方式

而如果想單獨(dú)修改某個(gè)文件的類(lèi)型米死,也可以在右下角進(jìn)行修改,見(jiàn)下圖:

單獨(dú)修改某個(gè)文件

跨平臺(tái)合作時(shí)候的解決方式:

當(dāng)我們使用git庫(kù)提交代碼的時(shí)候贮庞,有的人可能使用mac峦筒,有的人使用linux,有的人使用windows窗慎,不同的開(kāi)發(fā)環(huán)境如果都是按照自己系統(tǒng)的方式任意修改換行類(lèi)型物喷,難免會(huì)讓代碼庫(kù)整體混亂或者產(chǎn)生許多沒(méi)有必要的代碼更新

那么解決該問(wèn)題的方式有:core.autocrlf命令

git為了防止以上問(wèn)題擾亂跨平臺(tái)合作開(kāi)發(fā),使用命令可以轉(zhuǎn)化LF和CRLF

具體體現(xiàn)為:

  • git config --global core.autocrlf true

Git可以在你push時(shí)自動(dòng)地把行結(jié)束符CRLF轉(zhuǎn)換成LF捉邢,而在pull代碼時(shí)把LF轉(zhuǎn)換成CRLF脯丝。用core.autocrlf來(lái)打開(kāi)此項(xiàng)功能,如果是在Windows系統(tǒng)上伏伐,把它設(shè)置成true,這樣當(dāng)簽出代碼時(shí)晕拆,LF會(huì)被轉(zhuǎn)換成CRLF

  • git config --global core.autocrlf input

Linux或Mac系統(tǒng)使用LF作為行結(jié)束符藐翎;當(dāng)一個(gè)以CRLF為行結(jié)束符的文件不小心被引入時(shí)你肯定想進(jìn)行修正,把core.autocrlf設(shè)置成input來(lái)告訴 Git 在push時(shí)把CRLF轉(zhuǎn)換成LF实幕,pull時(shí)不轉(zhuǎn)換

  • git config --global core.autocrlf false

在本地和代碼庫(kù)中都保留CRLF吝镣,無(wú)論pull還是push都不變,代碼庫(kù)什么樣昆庇,本地還是什么樣子

當(dāng)然在多人跨平臺(tái)工作時(shí)候末贾,最好還是約定使用LF,還是CRLF整吆,然后不同系統(tǒng)進(jìn)行對(duì)應(yīng)的設(shè)置拱撵,這樣是工作規(guī)范,也有利于提高工作效率表蝙,希望以上可以幫助大家拴测。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市府蛇,隨后出現(xiàn)的幾起案子集索,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件务荆,死亡現(xiàn)場(chǎng)離奇詭異妆距,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)函匕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)娱据,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人浦箱,你說(shuō)我怎么就攤上這事吸耿。” “怎么了酷窥?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵咽安,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我蓬推,道長(zhǎng)妆棒,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任沸伏,我火速辦了婚禮糕珊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘毅糟。我一直安慰自己红选,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布姆另。 她就那樣靜靜地躺著喇肋,像睡著了一般。 火紅的嫁衣襯著肌膚如雪迹辐。 梳的紋絲不亂的頭發(fā)上蝶防,一...
    開(kāi)封第一講書(shū)人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音明吩,去河邊找鬼间学。 笑死,一個(gè)胖子當(dāng)著我的面吹牛印荔,可吹牛的內(nèi)容都是我干的低葫。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼躏鱼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼氮采!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起染苛,我...
    開(kāi)封第一講書(shū)人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鹊漠,失蹤者是張志新(化名)和其女友劉穎主到,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體躯概,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡登钥,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了娶靡。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片牧牢。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖姿锭,靈堂內(nèi)的尸體忽然破棺而出塔鳍,到底是詐尸還是另有隱情,我是刑警寧澤呻此,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布轮纫,位于F島的核電站,受9級(jí)特大地震影響焚鲜,放射性物質(zhì)發(fā)生泄漏掌唾。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一忿磅、第九天 我趴在偏房一處隱蔽的房頂上張望糯彬。 院中可真熱鬧,春花似錦葱她、人聲如沸撩扒。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)却舀。三九已至,卻和暖如春锤灿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背辆脸。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工但校, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人啡氢。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓状囱,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親倘是。 傳聞我的和親對(duì)象是個(gè)殘疾皇子亭枷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容