git windows下換行符問題

2021-07-15 12:53:54 字數 1410 閱讀 7896

在各作業系統下,文字檔案所使用的換行符是不一樣的。unix/linux 使用的是0x0a(lf),早期的 mac os 使用的是0x0d(cr),後來的 os x 在更換核心後與 unix 保持一致了。但 dos/windows 一直使用0x0d0a(crlf)作為換行符。git提供了乙個「換行符自動轉換」功能。這個功能預設處於「自動模式」,當你在簽出檔案時,它試圖將 unix 換行符(lf)替換為 windows 的換行符(crlf);當你在提交檔案時,它又試圖將 crlf 替換為 lf。git 的「換行符自動轉換」功能聽起來似乎很智慧型、很貼心,因為它試圖一方面保持倉庫內檔案的一致性(unix 風格),一方面又保證本地檔案的相容性(windows 風格)。但遺憾的是,這個功能是有 bug 的,而且在短期內都不太可能會修正。

1.git設定:

git config --global core.autocrlf false

git config --global core.safecrlf true

含義:autocrlf

#提交時轉換為lf,檢出時轉換為crlf

git config --global core.autocrlf true  

#提交時轉換為lf,檢出時不轉換

git config --global core.autocrlf input  

#提交檢出均不轉換

git config --global core.autocrlf falsesafecrlf

#拒絕提交包含混合換行符的檔案

git config --global core.safecrlf true  

#允許提交包含混合換行符的檔案

git config --global core.safecrlf false  

#提交包含混合換行符的檔案時給出警告

git config --global core.safecrlf warn

2.ide設定使用unix換行符

idea的設定

file->settings

editor->code style

line separator (for new lines),選擇:unix and os x (\n)

對已使用windows換行符的檔案,可以使用sublime text開啟,

view->line endings,選unix,儲存

Linux換行符和Windows換行符的區別與轉換

windows為乙個回車 r cr或 m 和乙個換行 n nl或lf 括號內是其它顯示方法 linux為乙個換行 n mac為乙個回車 r 檢視檔案是否含有windows換行符 windows notepad 檢視 顯示所有符號 linux file test.txt test.txt ascii ...

換行符問題

今天,我總算搞清楚 回車 carriage return 和 換行 line feed 這兩個概念的來歷和區別了。在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model 33 的玩意,每秒鐘可以打10個字元。但是它有乙個問題,就是打完一行換行的時候,要用去0.2秒,正好可以打兩個...

回車 換行符

換行符 n 和回車符 r 顧名思義,換行符就是另起一行,回車符就是回到一行的開頭,所以我們平時編寫檔案的回車符應該確切來說叫做回車換行符 n 10 換行 newline r 13 回車 return 也可以表示為 x0a 和 x0d 16進製制 在windows系統下,回車換行符號是 r n 但是在...