Должны ли компоненты bower быть gitignored?
было бы хорошей практикой сохранить только bower.json
файл и gitignore весь
6 ответов:
The официальная страница Bower указано:
Б. Н. если вы не создаете пакет, который предназначен для использования другими (например, вы создаете веб-приложение), вы всегда должны проверьте установленные пакеты в системе управления версиями.
обязательно проверьте ссылку в цитате, в ней обсуждаются некоторые плюсы и минусы. Основной pro он упоминает, что проверка их гарантирует, что ваши зависимости всегда доступно, пока доступен ваш репозиторий. Неважно, что происходит в беседке, GitHub или что там еще будет нужно.
на .gitignore файл во вновь созданном старшина проект AngularJS имеет bower_components (и node_modules), перечисленные для игнорирования (если вы не знаете Yeoman, это очень авторитетный инструмент для веб-лесов для современных веб-приложений, так что это достаточно хорошо для меня!):
.gitignore
node_modules dist .tmp .sass-cache bower_components
есть время и место для обоих подходов. Для Йомена уместно полагаться на Бауэра.json, потому что это инструмент в цепочке инструментов и должен оставаться живым и дышать с экосистемой bower. Для развертываемого веб-приложения обычно рекомендуется фиксировать зависимости и поддерживать больший контроль.
здесь хорошая статья мне нравится, что обсуждает это.
Если вы используете Grunt и узел с Bower, имеет смысл поставить bower_components в вашей .gitignore потому что когда вы бежите хрюкать служить или grunt build Он заботится о зависимостях для вас, я уверен, что именно поэтому в Yeoman они добавляют его .gitignore
The старшина генератор предварительно заполнил .gitignore файл с bower_components, но он также предварительно заполнен другими каталогами, которые, как я думаю, понадобятся для окончательного приложения (например, www), поэтому я провел некоторые исследования.
Я обнаружил, что www / index.html-это уменьшенная версия приложения / индекса.формат html. Каталог приложений и его содержимое (включая bower_components) содержит исходные файлы, необходимые для выходного каталога (www). Вы фиксируете источник каталоги в исходное управление (т. е. git), но не сгенерированные файлы (т. е. www). Менеджеры пакетов, такие как bower и npm, предназначены для использования на этапе сборки/генерации, и их артефакты не должны проверяться в системе управления версиями.
в конечном счете, источник, который вы проверяете в git, является минимальной конфигурацией, необходимой для создания остальной части проекта для целей разработки или развертывания.
это хорошо, чтобы игнорировать
/bower_components
реж и регистрация толькоbower.json
иbower-locker.bower.json
файл, если вы создаете файл с помощью bower-locker написано Шон Лонас.перед созданием Bower-locker был недостаток, вызванный проблемой bower не имея возможности shrinkwrap но это может быть смягчено вышеуказанной библиотекой.
выполните следующие команды, чтобы достигнуть этого:
npm install bower-locker -g
или
yarn global add bower-locker
затем создайте файл блокировки на основе существующего
bower.json
файл, запустив:bower-locker lock
оригинал
bower.json
файл будет переименован вbower-locker.bower.json