執(zhí)行g(shù)it add .的時(shí)候出現(xiàn)的警告
解釋:CR/LF是不同操作系統(tǒng)上使用的換行符:
- CR(CarriageReturn回車'\r'):回到一行的開頭,ASCII代碼是13
- LF(LineFeed換行'\n'):另起一行,ASCII代碼是10
應(yīng)用情況:
- Dos和Windows平臺(tái): 使用回車(CR)和換行(LF)兩個(gè)字符來結(jié)束一行,回車+換行(CR+LF),即“\r\n”;所以我們平時(shí)編寫文件的回車符應(yīng)該確切來說叫做回車換行符。
- Mac 和 Linux平臺(tái):只使用換行(LF)一個(gè)字符來結(jié)束一行,即“\n”;
許多 Windows 上的編輯器會(huì)悄悄把行尾的換行(LF)字符轉(zhuǎn)換成回車(CR)和換行(LF),或在用戶按下 Enter 鍵時(shí),插入回車(CR)和換行(LF)兩個(gè)字符。
影響:
- 一個(gè)直接后果是,Unix/Mac系統(tǒng)下的文件在Windows里打開的話,所有文字會(huì)變成一行;
- 而Windows里的文件在Unix/Mac下打開的話,在每行的結(jié)尾可能會(huì)多出一個(gè)^M符號(hào)。
- Linux保存的文件在windows上用記事本看的話會(huì)出現(xiàn)黑點(diǎn)。
這些問題都可以通過一定方式進(jìn)行轉(zhuǎn)換統(tǒng)一,例如,在linux下,命令unix2dos 是把linux文件格式轉(zhuǎn)換成windows文件格式,命令dos2unix 是把windows格式轉(zhuǎn)換成linux文件格式。
解決問題:
情況一:windows用戶
Git 可以在你提交時(shí)自動(dòng)地把回車(CR)和換行(LF)轉(zhuǎn)換成換行(LF),而在檢出代碼時(shí)把換行(LF)轉(zhuǎn)換成回車(CR)和換行(LF)。因?yàn)間it 的 Windows 客戶端基本都會(huì)默認(rèn)設(shè)置 core.autocrlf=true
git config --global core.autocrlf true
#提交時(shí)轉(zhuǎn)換為L(zhǎng)F,檢出時(shí)轉(zhuǎn)換為CRLF:
情況二:linux/mac用戶
Git 在檢出文件時(shí)不需要進(jìn)行自動(dòng)的轉(zhuǎn)換。然而當(dāng)一個(gè)以回車(CR)和換行(LF)作為行結(jié)束符的文件不小心被引入時(shí),你肯定想讓 Git 修正。 所以,你可以把 core.autocrlf 設(shè)置成 input 來告訴 Git 在提交時(shí)把回車和換行轉(zhuǎn)換成換行,檢出時(shí)不轉(zhuǎn)換:(這樣在 Windows 上的檢出文件中會(huì)保留回車和換行,而在 Mac 和 Linux 上,以及版本庫中會(huì)保留換行。)Linux 最好不要設(shè)置 core.autocrlf,因?yàn)檫@個(gè)配置算是為 Windows 平臺(tái)定制;
#提交時(shí)轉(zhuǎn)換為L(zhǎng)F,檢出時(shí)不轉(zhuǎn)換
$ git config --global core.autocrlf input
情況三:Windows 程序員
如果你正在開發(fā)僅運(yùn)行在 Windows 上的項(xiàng)目,可以設(shè)置 false 取消此功能,把回車保留在版本庫中:文章來源:http://www.zghlxwxcb.cn/news/detail-778267.html
#提交檢出均不轉(zhuǎn)換
git config --global core.autocrlf false
你也可以在文件提交時(shí)進(jìn)行safecrlf檢查
#拒絕提交包含混合換行符的文件
git config --global core.safecrlf true ??
?
#允許提交包含混合換行符的文件
git config --global core.safecrlf false ??
?
#提交包含混合換行符的文件時(shí)給出警告
git config --global core.safecrlf warn
通俗解釋
Windows 上設(shè)置 core.autocrlf=false,倉庫里也沒有配置 .gitattributes,很容易引入 CRLF 或者混合換行符(Mixed Line Endings,一個(gè)文件里既有 LF 又有CRLF)到版本庫,這樣就可能產(chǎn)生各種奇怪的問題。文章來源地址http://www.zghlxwxcb.cn/news/detail-778267.html
到了這里,關(guān)于warning: in the working copy of ‘...‘, LF will be replaced by CRLF the next time Git touche的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!