core.autocrlf true не применяется к измененному текстовому файлу
Прочитав много документации по EoL в разных ОС, я не понимаю, почему мои EoL из yml-файлов не конвертируются в LF автоматически. Я сделал ошибку, создав файл yml в Notepad++ в Windows. Однако для core.autocrlf установлено значение true. Вот почему я ожидаю, что git автоматически выполнит конвертацию EoL. Но независимо от того, что я пытался (редактирование файла снова, замена EoL в моей IDE и т. Д.), Я все еще вижу ^M
вместо правильного окончания строки, когда я помещаю свой файл в github. По какой-то причине установки глобального свойства недостаточно.
В итоге мне помогло добавление файла.gitattributes в репозиторий, как описано здесь.
Итак, несмотря на то, что я нашел решение, которое мне действительно нравится и, на мой взгляд, предпочтительнее, поскольку конфигурации хранятся вместе с кодом, я хочу понять, почему git config --global core.autocrlf true
не работает для меня, когда несколько источников заявляют что-то вроде:
core.autocrlf true: Git обработает все текстовые файлы и удостоверится, что CRLF заменяется на LF при записи этого файла в базу данных объектов, и превратит все LF обратно в CRLF при записи в рабочий каталог.