core.autocrlf配置
假如你正在Windows上寫程序槽畔,又或者你正在和其他人合作哲银,他們在Windows上編程莱没,而你卻在其他系統(tǒng)上初肉,在這些情況下,你可能會遇到行尾結(jié)束符問題饰躲。這是因為Windows使用回車和換行兩個字符來結(jié)束一行牙咏,而Mac和Linux只使用換行一個字符。雖然這是小問題嘹裂,但它會極大地擾亂跨平臺協(xié)作妄壶。
- Git可以在你提交時自動地把行結(jié)束符CRLF轉(zhuǎn)換成LF,而在簽出代碼時把LF轉(zhuǎn)換成CRLF寄狼。用core.autocrlf來打開此項功能丁寄,如果是在Windows系統(tǒng)上,把它設(shè)置成true泊愧,這樣當(dāng)簽出代碼時伊磺,LF會被轉(zhuǎn)換成CRLF:
$ git config --global core.autocrlf true
- Linux或Mac系統(tǒng)使用LF作為行結(jié)束符,因此你不想 Git 在簽出文件時進(jìn)行自動的轉(zhuǎn)換;當(dāng)一個以CRLF為行結(jié)束符的文件不小心被引入時你肯定想進(jìn)行修正,把core.autocrlf設(shè)置成input來告訴 Git 在提交時把CRLF轉(zhuǎn)換成LF碾阁,簽出時不轉(zhuǎn)換:
$ git config --global core.autocrlf input
這樣會在Windows系統(tǒng)上的簽出文件中保留CRLF,會在Mac和Linux系統(tǒng)上摘能,包括倉庫中保留LF。
- 如果你是Windows程序員敲街,且正在開發(fā)僅運行在Windows上的項目团搞,可以設(shè)置false取消此功能,把回車符記錄在庫中:
$ git config --global core.autocrlf false