Расширения Git меняют окончание строки настроек и принудительно фиксируют файл на git remote

У меня проблема с терминатором строки CR LF.

раньше я устанавливал окончания строк типа No Set, но это не позволяло мне правильно загружать файлы на удаленном git с коммитом и пушом.

Удаленно файл загрузился правильно но было только наличие LF и отсутствовал CR

Пример Загрузить pippi pluto CR LF

Зафиксировать и отправить git remote pippo pluto LF

Я изменил окончания строк настроек на: Checkout is-as, commit as-is core.autocrlf имеет значение false

Установить вид конфигурации

Теперь файл загружается правильно (окончания строк CR LF) на удаленном git через коммит и push, но только когда файл новый

Старые файлы остаются с проблемой завершения строки (только LF, но отсутствует CR). Git не позволяет мне перезагружать файлы с правильными терминаторами (CR LF), поскольку git идентичны, но удаленно отсутствует терминатор (только LF).

Как я могу принудительно повторно загрузить неправильные файлы с правильным файлом или всей директорией, содержащей эти файлы (есть много файлов, в которых есть эта проблема)?

Спасибо, всего хорошего


person Bonni    schedule 20.01.2018    source источник


Ответы (2)


С опцией, которую вы выбираете «Проверить как есть, зафиксировать как есть» (что я также рекомендую при использовании только одной ОС), git больше не касается/преобразует файлы при их перемещении.

Таким образом, вы должны сделать массивную коррекцию всех файлов перед их фиксацией.

Есть много способов сделать это (не все идеальны или удобны). Выберите тот, у которого есть инструменты:

person Philippe    schedule 20.01.2018

В файле .gitattributes введите *.yourextension -text, чтобы указать все файлы с расширением «yourextension», или введите * -text вместо * text=auto

путь отмечен для автоматического преобразования конца строки. Если Git решает, что содержимое является текстом, его окончания строк преобразуются в LF при регистрации. Если файл зафиксирован с помощью CRLF, преобразование не выполняется.

Установить строковое значение "auto"

ссылаясь на ваш

Старые файлы остаются с проблемой...

Итак, вы также можете завернуть в json и сохранить текст "MyContent1\r\nMyContent2\nMyContent3"

person iliyesku    schedule 20.05.2019