git Переносы строк (разных) -- как игнорировать/конвертировать в разных ОС (Windows/Linux -- core.autocrlf commit checkout)

За политику работы с символами, используемымми для обозначения переноса строки (которые, как известно, разные в разных ОС) отвечает параметр core.autocrlf конфигурации git --
различные варианты:

  1. Универсальным решением будет выставить значение input для параметра core.autocrlf -- такой командой (глобально):
    git config --global core.autocrlf input

    -- в этом случае мы получаем в выгруженном коде/файлах (в том, что находится непосредственно в файловой системе):

    • CRLF-концы на Windows-системах
    • и LF-концы на Mac'ах и Linux'е, и в репозитории (т.е. коммит на Windows тоже преобразует даст в репозитории LF-символ).
  2. Если вы на Windows, но в команде есть кто-то, кто не на нём:
    git config --global core.autocrlf true

    -- концы строк из LF будут сконвертированы в CRLF при выгрузке кода.

  3. Если вся в команде работают на Windows, то можно писать символ возврата каретки и в репозиторий:
    git config --global core.autocrlf false

Источники:

Key Words for FKN + antitotal forum (CS VSU):