У меня есть следующая настройка:
- Ubuntu Lucid 32 VM создан Vagrant.
- Папка, из которой начинается Vagrant с некоторыми CSS и JS файлами. Папка монтируется внутри виртуальной машины по адресу /vagrant/.
- grunt.js с задачей просмотра, запущенной с VM, наблюдая за изменениями в css и js файлах. После того, как файлы были изменены, он должен объединить эти файлы в один css и один файл js.
Проблема: задача Watch в файле grunt.js не видела изменений в установленной папке.
Если я изменяю файлы внутри VM, наблюдайте, как задача работает нормально. Если я запускаю grunt.js не из виртуальной коробки, но и из main os, он также работает. Пробовал в Mac OS и Windows 7.
Проблема возникает только тогда, когда задача запускается с VM, а файлы меняются из основной ОС. Есть ли способ обхода проблемы?
Обновить. Некоторые сведения о наших сценариях использования, чтобы лучше понять контекст:
- Мы создаем студию, в которой 10+ работают с кодом.
- Различные люди, использующие разные ОС. У нас есть: Win 7, Mc OS X и Ubuntu Linux.
- Мы работаем над 100 другими проектами и поддерживаем их.
- Prjects используют разные языки и настройки: у нас есть проекты PHP на наших собственных CMS, проектах PHP на проектах Yii, Python на Django и некоторых проектах node.js.
- Различные разработчики могут в какой-то момент работать над любым из этих проектов.
- Прямо сейчас мы проводим много времени каждый раз, когда нам нужно сделать работу над проектом на компьютере разработчика, который раньше не работал с ним. И, как правило, нам нужна помощь разработчика, который уже работал над этим, чтобы заставить его работать.
Мы хотим сделать его более прямым. Для этого мы пытаемся использовать Vagrant и ряд предварительно сконфигурированных образов ОС.
Теперь настройка проекта выглядит следующим образом:
- Проект проверки разработчиков от git.
- Разработчик открывает папку проекта в терминале.
- Разработчик входит в "бродягу".
- Через 5 минут он полностью сконфигурировал и выполнил рабочую копию проекта.
Нам нравится эта настройка, и большую часть времени у нас не было никаких проблем с ней. Но в наших проектах node.js мы используем некоторые препроцессоры css и js и хотели бы обновлять их файлы в реальном времени. И есть проблема на начальном посту.
Решения с доступом к файлам с ssh VM и файлами проектов внутри VM, вероятно, будут работать, но они не решили базовую проблему (быстрая и простая настройка большого количества проектов в группе разработчиков, работающих под управлением разных ОС)