記錄 warning: CRLF will be replaced LF by in XXX 的解決辦法

Ciroy發表於2019-07-24

使用 mac 電腦,這個問題遇到過幾次,就是當 git add . 的時候會報 warning: CRLF will be replaced LF by in XXX

原因是需要提交的檔案是在windows下生成的,windows中的換行符為 CRLF, 而在linux下的換行符為LF,所以在執行add . 時出現提示.

網上查詢的辦法多是
git config --global core.autocrlf false
檢視 git config --global --list 配置成功了,但是很遺憾,git add -A 依然

偶然看到一個文章,記錄下解決辦法
Git可以在你提交時自動地把行結束符CRLF轉換成LF,而在簽出程式碼時把LF轉換成CRLF。用core.autocrlf來開啟此項功能, 如果是在Windows系統上,把它設定成true,這樣當簽出程式碼時,LF會被轉換成CRLF:

$ git config --global core.autocrlf true
1
Linux或Mac系統使用LF作為行結束符,因此你不想Git在簽出檔案時進行自動的轉換;當一個以CRLF為行結束符的檔案不小心被引入時你肯定想進行修正, 把core.autocrlf設定成input來告訴Git在提交時把CRLF轉換成LF,簽出時不在Windows系統上的簽出檔案中保留CRLF,會在Mac和Linux系統上,包括倉庫中保留LF。

$ git config –global core.autocrlf input
1
如果你使用Windows,且正在開發僅執行在Windows上的專案,可以設定false取消此功能,把回車符記錄在庫中:

$ git config --global core.autocrlf false

本作品採用《CC 協議》,轉載必須註明作者和本文連結
Ciroy

相關文章