Rumah > Soal Jawab > teks badan
最近在windows下面最了个项目用git来管理,git add .的时候一直报错 LF will be replaced by CRLF,网上的大部分答案都是git config --global core.autocrlf false,禁用自动换行,这样做确实可以让我在这个项目中add了
但是问题是,另一项目(从mac下拉的代码),做管理的时候必须要把它设置成true才可以
我现在脑子有点瓦特,能不能哪位大神仔细讲一下,这个过程到底是发生了什么?
怪我咯2017-05-02 09:34:11
Um, adakah anda menggunakan Baidu? . . Jadi anda tidak tahu punca masalah itu sama sekali, ia tiada kaitan dengan pembalut talian automatik
karakter baris baharu windows: aksara baris baharu CRLF Linux/UNIX: LF
Jadi sudah tentu anda perlu menukar aksara carriage return daripada windows kepada UNIX.
git config --global core.autocrlf false
Matikan fungsi penukaran baris baharu
git config --global core.autocrlf true
Ia berfungsi seperti berikut:
Git boleh mengendalikan ini dengan menukar pengakhiran baris CRLF secara automatik kepada LF apabila anda menambah fail pada indeks
Daripada dokumentasi rasmi
phpcn_u15822017-05-02 09:34:11
Memandangkan git adalah eksklusif untuk Linux pada mulanya, pemisah baris sentiasa menjadi LF Linux Jika pasukan projek mempunyai pengguna Linux dan Windows, maka pemisah barisan mesti disatukan sebagai LF autocrlf dihidupkan, fail tempatan pengguna Windows Masih CR LF, ditukar secara automatik kepada LF apabila diserahkan.
ps: Memandangkan Windows digunakan secara meluas di China, sangat mungkin untuk menukar fail khusus Windows kepada pemisah baris LF, seperti skrip batch kelawar Dengan cara ini, fail yang dimuat turun dari github akan kehilangan pemisah baris CR. mengakibatkan ketidakupayaan untuk berlari.
Item tetapan ini berlebihan Biasanya disyorkan untuk mematikannya dan memastikan pemisah baris adalah konsisten. Secara umumnya, IDE semasa boleh memaparkan berbilang gaya pemisah baris secara normal, dan LF juga boleh dipaparkan secara normal di bawah Windows. Selagi anda tidak mengedit kod dengan Windows Notepad, pemisah baris gaya CR LF tidak akan muncul.