Вопрос

Я запускаю смешанную среду, и держите центральный, голый репозиторий, где я тяну и выдвинул большинство моих вещей. Этот централизованный репозиторий работает на Linux, и я проверяю Windows XP / 7, MAC и Linux. Во всех репозиториях я положил следующую строку в моем .git / config:

[core]
     autocrlf = true

У меня нет флага safecrlf=true в любом месте. Первый раз, когда я изменяю вещи на моем одном Windows Machine (XP), нет проблем, и когда я смотрю на разницу, она выглядит нормально. Но когда я делаю то же самое на другой машине Windows (7), все строки отображаются как измененные, но локальные концовки линии R N, как и ожидалось (при проверке в шестнадцатеричном редакторе). То же самое относится и к MacOSX может. Иногда я получаю ощущение, что разные системы борются на концовках линии, но я не могу быть уверен (я потеряю трек все времена, которые я меняю определенные файлы).

Я не использовал, чтобы иметь autocrlf Установите, но установите флаг много месяцев назад. Может ли это вызвать мои текущие проблемы? Нужно ли мне снова клонировать все, чтобы потерять старый багаж? Или есть другие вещи, которые нуждаются в настройке тоже? Я старался git checkout -- . Около миллиона раз, но без успеха.

Это было полезно?

Решение

Вам нужно установить autocrlf к true На каждой машине вы работаете (в глобальном) или для каждой копии хранилища (в местном). Настройки репо, которую вы клонировали, не применяются к вашему местному репо.

Другой ответ заключается в том, что у вас есть смесь окончаний линий в файлах в вашем репо.

Фильтр на оформлении заказа может быть установлен для каждого типа исходного типа, чтобы исправить свои концовки строки, а также на проверку, чтобы сбросить их в стандарт REPO.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top