1. 程式人生 > >git core.autocrlf配置說明

git core.autocrlf配置說明

格式化

格式化是許多開發人員在協作時,特別是在跨平臺情況下,遇到的令人頭疼的細小問題。 由於編輯器的不同或者Windows程式設計師在跨平臺專案中的檔案行尾加入了回車換行符, 一些細微的空格變化會不經意地進入大家合作的工作或提交的補丁中。不用怕,Git的一些配置選項會幫助你解決這些問題。

core.autocrlf

假如你正在Windows上寫程式,又或者你正在和其他人合作,他們在Windows上程式設計,而你卻在其他系統上,在這些情況下,你可能會遇到行尾 結束符問題。 這是因為Windows使用回車和換行兩個字元來結束一行,而Mac和Linux只使用換行一個字元。 雖然這是小問題,但它會極大地擾亂跨平臺協作。

Git可以在你提交時自動地把行結束符CRLF轉換成LF,而在簽出程式碼時把LF轉換成CRLF。用core.autocrlf來開啟此項功能, 如果是在Windows系統上,把它設定成true,這樣當簽出程式碼時,LF會被轉換成CRLF:

$ git config --global core.autocrlf true

Linux或Mac系統使用LF作為行結束符,因此你不想Git在簽出檔案時進行自動的轉換;當一個以CRLF為行結束符的檔案不小心被引入時你肯定想進行修正, 把core.autocrlf設定成input來告訴Git在提交時把CRLF轉換成LF,簽出時不轉換:

$ git config --global core.autocrlf input

這樣會在Windows系統上的簽出檔案中保留CRLF,會在Mac和Linux系統上,包括倉庫中保留LF。

如果你是Windows程式設計師,且正在開發僅執行在Windows上的專案,可以設定false取消此功能,把回車符記錄在庫中:

$ git config --global core.autocrlf false

轉自:http://www.qinbin.me/git-core-autocrlf配置說明/