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