Vagrant w/ windows как хост, файлы не запускаются на vm из-за crlf

Я пытаюсь настроить vagrant с окнами в качестве хоста и Ubuntu в качестве гостя.

Я хочу закоммутировать сам файл vagrant в репозиторий, чтобы шаги были такими: клонировать репо в windows, vagrant и получить готовый и работающий env.

Проблема в том, что репо клонируется в Windows, все файлы имеют crlf. Когда они выполняются из vagrant ssh, выдает ошибку

Как репо может сосуществовать в vagrant с windows в качестве хоста и linux в качестве гостя, чтобы мои товарищи по команде, использующие windows, все еще могли безопасно редактировать файлы и фиксировать их?

заранее спасибо

2 ответа

Решение

Я бы не рекомендовал core.autocrlf быть настроенным на что-то еще, чем false ":

git config --global core.autocrlf false

Это настройка для всего хранилища, которая будет применяться ко всем файлам, включая двоичные. Как я объясняю в " Попытка зафиксировать файлы Git, но получить: fatal: LF would be replaced by CRLF in <some file in repo> ", это может испортить тех.

Если для определенного типа файлов вам необходимо убедиться, что EOL используется в них, .gitattributes файл, в котором вы объявляете core.eol директивы.

Для управления тем, какой стиль окончания строки используется в рабочем каталоге, используйте eol атрибут для одного файла и core.eol переменная конфигурации для всех текстовых файлов.

# Declare files that will always have CRLF line endings on checkout.
*.css text eol=lf
*.html text eol=lf
*.js text eol=lf

(см. этот пример кодовой стены, Скотт Гроган ( ninjascribble ))

Нашел решение,

для git установите конфиг так: git config --global core.autocrlf input

источник: http://blog.xjtian.com/post/54399466362/vagrant-tips-for-windows-users

Другие вопросы по тегам