Baru-baru ini, saya menggunakan git untuk menguruskan projek terakhir saya di bawah Windows Apabila saya menjalankan git add., saya terus mendapat ralat LF akan digantikan dengan CRLF Kebanyakan jawapan di Internet adalah git config --global core. autocrlf. palsu, lumpuhkan pembungkusan perkataan automatik Ini membenarkan saya menambah
dalam projek ini Tetapi masalahnya ialah projek lain (kod ditarik ke bawah dari mac) melakukan pengurusan ditetapkan kepada benar
Saya agak keliru sekarang. Bolehkah seseorang menerangkan secara terperinci apa sebenarnya yang berlaku dalam proses ini?
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.
Matikan fungsi penukaran baris baharu
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
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.