Git - LF Will Be Replaced by CRLF
Ashok Chapagai
2021年12月24日
LF 代表 Line Feed
,這是一種在基於 UNIX 的系統中表示行尾的方式。但是在基於 Windows 的系統中,一行通常用 CR(回車)和換行(LF)來表示。
如果你使用基於 UNIX 的系統(macOS)推送程式碼,則會出現此問題,程式碼將以 LF 結尾。
如果你使用 Windows 機器,修改程式碼並提交,它將被 CRLF 替換,因為 git 很聰明並且不希望你在 Windows 作業系統上使用 LF。
同樣,如果警告說 LF Will Be Replaced by CRLF
,則會發生相反的情況。提交/切換後,你將丟失基於 Windows 的 CRLF,LF 將替換它。
修復 Git 中的 LF Will Be Replaced by CRLF
警告
修復警告的一種方法是更改位於 git 安裝路徑中的配置檔案。code.autocrlf
的值儲存在位於 %ProgramFiles(x86)%\git\etc\gitconfig
或 ProgramFiles\git\etc\gitconfig
和 /etc/gitconfig
的 gitconfig
檔案中基於 Linux/Unix 的作業系統。
但是,我們可以在不同情況下解決此問題:
如果你希望在基於 Unix 的作業系統上使用該專案,你應該將 core.autocrlf
的值設定為 true
如果你希望僅在 Windows 下使用該專案,則該標誌應設定為 false
。
但是,在基於 Unix 的作業系統中,你可以根據需要禁用 core.autocrlf
。
在進行修改之前,你可以使用以下命令檢查當前設定,
git config core.autocrlf
該命令將給出 true
或 false
或 input
的輸出,你可以根據需要進行更改。
修復整個系統上的 LF Will Be Replaced by CRLF
警告
要解決系統範圍內的問題,你可以使用,
git config --system core.autocrlf false
修復每個使用者的 LF Will Be Replaced by CRLF
警告
要根據使用者解決問題,你可以使用,
git config --global core.autocrlf false
只在專案中修復 LF Will Be Replaced by CRLF
的警告
要解決特定專案的問題,
git config --local core.autocrlf false
Author: Ashok Chapagai