У меня есть Git-репозиторий, доступ к которому возможен как из Windows, так и из OS X, и я знаю, что он уже содержит некоторые файлы с окончаниями CRLF. Насколько я могу судить, есть два способа справиться с этим:
Набор
core.autocrlf
дляfalse
везде,Следуйте приведенным здесь инструкциям (отраженным на страницах справки GitHub), чтобы преобразовать репозиторий так, чтобы он содержал только LF-окончания, и после этого установите
core.autocrlf
егоtrue
в Windows иinput
OS X. Проблема заключается в том, что если у меня есть какие-либо двоичные файлы в репозитории который:- неправильно помечены как двоичные в gitattributes, и
- случайно содержат как CRLF, так и LF,
они будут испорчены. Возможно, мой репозиторий содержит такие файлы.
Так почему я не должен просто отключить конвертацию конца строки в Git? В сети много смутных предупреждений о core.autocrlf
выключении, вызывающих проблемы, но очень мало конкретных ; единственное, что я нашел до сих пор, это то, что kdiff3 не может обрабатывать окончания CRLF (для меня это не проблема), и что некоторые текстовые редакторы имеют проблемы с окончанием строки (для меня это тоже не проблема).
Репозиторий является внутренним для моей компании, поэтому мне не нужно беспокоиться о том, чтобы делиться им с людьми с различными настройками autocrlf или требованиями к концу строки.
Есть ли какие-то другие проблемы с тем, чтобы просто оставить окончания строк, как я знаю?
autocrlf
в ложь. Я ищу причины, чтобы установить это на истину.
autocrlf = input
: кажется, что это идеальное решение между двумя крайностями: вы сохраняете свое хранилище в чистоте от CRLF-дерьма, и локально разработчики Windows могут использовать все, что захотят, без того, чтобы в их локальных файлах ничего не происходило автоматически. (Они могут хотеть LF локально по разным причинам, поэтому true
, на мой взгляд , это плохо.) Я не вижу никаких минусов в использовании autocrlf = input
.
autocrlf
на ложь.