關於 LF will be replaced by CRLF 問題出現的原因以及解決方式

喔喔牛在路上發表於2017-01-10

master warning: LF will be replaced by CRLF in www/css/style.css.>

這個問題的出現時我向遠端倉庫push我本地的程式碼時出現的問題截圖如下:
LF will be replaced by CRLF
在網上百度了一下:

windows中的換行符為 CRLF,而在Linux下的換行符為LF,所以在執行add . 時出現提示

貌似說的還是那麼朦朧,繼續百度了下:

工作區的檔案都應該用 CRLF 來換行。如果
改動檔案時引入了 LF,提交改動時,git 會警告你哪些檔案不是純 CRLF 檔案,但 git 不會擅自修改工作區的那些檔案,而是對暫存區(我們對工作區的改動)進行修改。也因此,當我們進行 git add 的操作時,只要 git 發現改動的內容裡有 LF 換行符,就還會出現這個警告。

恩恩,這樣綜合下就明白怎麼回事兒了,原來 CRLF和LF是兩種不同的換行格式,git工作區預設為CRLF來作為換行符,所以當我們專案檔案裡有用的地方使用LF作為換行符,這個時候我們再繼續git add 或則git commit的時候就會彈出警告,當最終push到遠端倉庫的時候git會統一格式全部轉化為用CRLF作為換行符
—————————————————分割線———————————————————
解決方式:
我們可以在git命令列中輸入如下指令:

rm -rf .git // 刪除.git
git config –global core.autocrlf false //禁用自動轉換
git init //初始化git庫
git add –all //提交所有修改到暫存區

建議:遇到了這種問題可以直接忽略,對我們整體工作不會造成影響!

相關文章