Настройка GIT для проекта Symfony2: зачем добавлять папку web/bundles в gitignore

Я создаю свой первый проект Symfony2, и я могу смутить его с целью папки web/bundles. Согласно документации Symfony2, они говорят, что здесь статические данные передаются как js-библиотеки, css и изображения. Это все имеет смысл, но в то время как вы все еще строите эту базовую компоновку, не слишком ли неприятно иметь /web/bundles в списке игнорирования? В самом деле, почему даже в списке игнорирования? bootstrap, параметры, кеш и т.д., все имеет смысл игнорировать, потому что вы не хотите перекрещивать настройки разработки с производственными настройками.

Это то, что symfony инструктирует вас добавить к gitignore:

/web/bundles/
/app/bootstrap*
/app/cache/*
/app/logs/*
/vendor/
/app/config/parameters.yml

Ответы

Ответ 1

Причина, по которой следует игнорировать папку web/bundles, заключается в том, что она сгенерирована при запуске команды app/console assets:install web, которая также запускается автоматически в конце прогона bin/vendors install. Все, что у вас есть в YourBundle/Resources/public, идет в web/bundles/your.

Если вы не хотите устанавливать активы каждый раз при их изменении во время разработки, используйте аргумент --symlink:

app/console assets:install --symlink web

Ответ 2

Я хотел бы прокомментировать ответ Эльнура Абдурахимова, но из-за недостаточной репутации: app/console assets:install web удаляет все в web/, поэтому обязательно скопируйте все в src/<Bundle>/Resources/public до выполнить команду в первый раз.