Git Показывает случайные файлы как измененные после клонирования; Не могу отказаться от них

Как только я клонирую определенное репо на моем macbook pro, я сразу вижу файлы, измененные в этом репо. Я пробовал git pull, git checkout, git reset, кажется, что эти якобы измененные файлы не исчезают. Я использовал git какое-то время и никогда не видел этого раньше. Что может быть причиной этого?

Ответ 1

Существует файл конфигурации, который маркирует определенные типы исходных файлов как текст, для которого будут преобразовываться новые строки. Там либо файл .gitattributes в корне репозитория, либо глобальный ~/.gitattributes в вашем домашнем каталоге.

Вы можете сделать две вещи:

  • измените конфигурацию .gitattributes, чтобы файлы больше не были помечены как text
  • передать предлагаемые изменения, чтобы хранилище стало соответствовать спецификации; Я бы рекомендовал это решение

Я бы сказал, что намерение состояло в том, чтобы позволить git обрабатывать новые строки, поэтому кто-то добавил конфигурацию в .gitattributes после того, как некоторые файлы были скопированы с конечными строками Windows CRLF, и когда это произойдет, git doesn ' t автоматически исправить существующие файлы, которые уже были проверены в рабочем дереве. Но новый клон получит эти файлы в рабочее дерево заново и автоматически исправит их, поэтому git будет жаловаться в следующий раз, когда вы сравните рабочее дерево с индексом.