Git中的core.autocrlf選項


項目的開發環境為Windows,在Linux環境下編譯,使用Git進行版本控制。

在安裝好Git和TortoiseGit后,從遠端clone,遇到一個奇怪的問題,Shell腳本中的LF總是被替換成了CRLF,最后發現是在Git的安裝過程中有一項沒有被配置好。

 

在Windows下,由回車CR(0x0D)(\r)和換行LF(0x0A)( \n))共同標志一行的結束。

而在Linux和Mac環境下,每一行的結束僅有一個換行LF(0x0A)(\n)。

在Git中有一項core.autocflf配置項,它可以被配置為true,false和input,它們分別表示:

1 // 提交時轉換為LF,檢出時轉換為CRLF
2 git config --global core.autocrlf true
3 
4 // 提交時轉換為LF,檢出時不轉換
5 git config --global core.autocrlf input
6 
7 // 提交檢出均不轉換
8 git config --global core.autocrlf false

 使用上述的最后一條命令,將core.autocrlf配置為false,即不開啟自動轉換功能。之后重新clone,本地倉庫中的Shell腳本中不再出現CR。檢查我的Git配置,發現core.autocrlf被配置為了true。這樣,在從遠端clone倉庫時,Shell腳本中的LF就被替換成了CRLF。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM