Я случайно заменил окончания строк CRLF на LF во время коммита.История файлов теперь выглядит следующим образом:
+---------+-----------+
| Version | Line Feed |
+---------+-----------+
| 4 | CRLF |
| 3 | CRLF | << changed all LFs back to CRLFs
| 2 | LF | << mistake introduced here
| 1 | CRLF |
+---------+-----------+
Проблема в том, что этот файл теперь идентифицирован как двоичный файл (даже после того, как я вручную исправил проблему в версии 3).Это привело к тому, что diff
, blame
и другие инструменты перестали работать должным образом с этим текстовым файлом.
Я попытался установить *.xml crlf diff
в ./git/info/attributes
, но он работает только для diff
, а не для blame
, также подозреваю, что у меня могут возникнуть проблемы с конфликтами слияния.Он также выдает мне LF will be replaced by CRLF
предупреждения при фиксации этого файла, указывая, что настройки атрибутов недостаточны.
Это в ОС Windows с установленным autocrlf = true
. Как мне заставить git снова идентифицировать его как текстовый файл?