Предопределенные значения для .gitattributes - PullRequest
0 голосов
/ 22 декабря 2018

Иногда люди создают .gitattributes файл со списком известных расширений и вручную объявляют их как text или binary:

*.ts text
*.js text
*.json text
*.csv text
*.txt text
*.xml text
# etc.

Имеет ли Git значение по умолчанию (встроенныйв) список популярных расширений файлов (таких как .txt, .json и т. д.)?Имеет ли смысл вручную объявлять хорошо известные расширения в каждом репо?

Что произойдет, если Git не знает расширения?Пытается ли он использовать эвристику путем поиска символов EOL или считает все неизвестные расширения binary?

1 Ответ

0 голосов
/ 22 декабря 2018

Имеет ли Git список встроенных расширений по умолчанию (например, .txt, .json и т. Д.) По умолчанию?

Нет.

Имеет ли смысл вручную объявлять общеизвестные расширения в каждом репо?

Это зависит от того, что вы намереваетесь поместить в свой репозиторий, и нужно ли вам иметь дело с Windows.

Что произойдет, если Git не знает расширения?

Git вообще не знает расширений.

Для пользователей с плохим поведением систем (по сути, только Windows), в эти дни), Git по умолчанию выполняет быстрое сканирование содержимого каждого файла.Если содержимое выглядит двоичным, Git предполагает, что файл является двоичным и не выполняет никаких преобразований EOL.Если содержимое выглядит как текст, Git предполагает, что оно является текстом и выполняет выбранные вами преобразования EOL.

В нормальных системах (в основном все не -Windows, этидней), преобразованием EOL по умолчанию является «не трогать данные», так что даже если Git обнаружит файл как текст, он ничего не сделает с данными.Поэтому здесь никогда не нужно ничего делать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...