Показаны сообщения с ярлыком Notepad. Показать все сообщения
Показаны сообщения с ярлыком Notepad. Показать все сообщения

четверг, 16 августа 2012 г.

Git: fatal: LF would be replaced by CRLF


Git перестал добавлять файлы в репозиторий, выдавая ошибку:

fatal: LF would be replaced by CRLF in *file*

Связанно это с тем что переносы строк были в Unix-формате, так как дело происходило под Windows.
Простые решения:

  1. Очень просто конвертировать переносы строк в Windows-формат помогает текстовый редактор Notepad++: Правка→EOL конверсия→Преобразовать в WIN-формат.
    Подробнее.
  2. Вручную преобразовать символы перевода строки из виндовых в линуксовые, открыть файл, еще раз визуально все проконтролировать и сохранить.
  3. Быстро заменить CRLF на LF можно утилитой dos2unix, входящей в MINGW, с которым поставляется git  для win32:
    dos2unix.exe -f -D *file*


Если таких файлов много: то самое простое - отключить проверку формата:

$ git config --global core.autocrlf false

$ git config --global core.safecrlf false

Здесь интересное обсуждение различных комбинаций значений этих двух опций. Если изменения в core.autocrlf ни к чему не привели, то пробуйте:

Try git config —global core.safecrlf warn