Хорошо, поэтому я добавил файл .gitattributes
с такими строками
*.css text
*.js text
etc...
Затем я выполнил инструкции на http://git-scm.com/docs/gitattributes#_checking-out_and_checking-in
$ rm .git/index # Remove the index to force Git to
$ git reset # re-scan the working directory
$ git status # Show files that will be normalized
$ git add -u
$ git add .gitattributes
$ git commit -m "Introduce end-of-line normalization"
Но теперь в моей рабочей копии остались символы возврата каретки! У меня есть неотслеживаемые файлы, которые я хотел бы сохранить. Как мне снова получить git checkout из основной ветки с нормализованными файлами?
Я знаю, что файлы в репозитории нормализованы, потому что, когда я клонирую репо, у меня есть все файлы без возврата каретки.
git
newline
core.autocrlf
Джейсон
источник
источник
Как указывали другие, можно просто удалить все файлы в репо, а затем проверить их. Я предпочитаю этот метод, и это можно сделать с помощью кода ниже
или одна строка
Использую постоянно и минусов пока не нашел!
Для некоторого дальнейшего объяснения,
-z
добавляет нулевой символ в конец каждой записи, выводимой с помощьюls-files
, и-0
сообщает,xargs
чтобы ограничить вывод, который он получал, этими нулевыми символами.источник