Чи було б гарною практикою зберігати лише bower.json
файл і gitignore весь bower_components
каталог?
Чи було б гарною практикою зберігати лише bower.json
файл і gitignore весь bower_components
каталог?
Відповіді:
На офіційній сторінці "Бауер" зазначено:
Примітка. Якщо ви не розробляєте пакет, призначений для споживання іншими (наприклад, ви створюєте веб-додаток), ви завжди повинні перевіряти встановлені пакети на контроль джерел .
Не забудьте перевірити посилання в цитаті, в ньому обговорюються деякі плюси і мінуси. Головне, про що йдеться, полягає в тому, що перевірка їх гарантує, що ваші залежності завжди доступні, доки ваше сховище буде доступне. Незалежно від того, що станеться з Bower, GitHub або будь-яким іншим, потрібно було б інакше.
Файл .gitignore в нещодавно створеному проекті Yeoman AngularJS містить список bower_components (та node_modules), які не враховуються (якщо ви не знаєте Yeoman, це дуже надійний інструмент веб-лісів для сучасних веб-сайтів, тому для мене це досить добре!):
.gitignore
node_modules
dist
.tmp
.sass-cache
bower_components
Для обох підходів є час і місце. Для Yeoman доречно покластися на bower.json, тому що це інструмент в ланцюжку інструментів і йому потрібно залишатися жити і дихати за допомогою екосистеми цистерни. Для веб-додатків, що розгортаються, зазвичай є хорошою практикою здійснювати залежності та підтримувати більше контролю.
Ось хороша стаття, мені подобається, що це обговорює.
Yeoman генератор попередньо наповнив .gitignore файл з bower_components, але також попередньо заповнений з іншими каталогами я думаю , був би необхідний для остаточного додатки (наприклад , WWW) , так що я зробив деякі дослідження.
Я виявив, що www / index.html - це мінімізована версія програми / index.html. Каталог програми та його вміст (включаючи bower_components) містять вихідні файли, необхідні для вихідного каталогу (www). Ви вводите каталоги джерел в управління джерелами (тобто git), але не створювані файли (тобто www). Менеджери пакетів, такі як bower і npm, повинні використовуватися під час фази збирання / генерації, і їх артефакти не повинні перевірятися на контроль джерел.
Зрештою, джерело, яке ви перевіряєте на git, - це мінімальна мінімальна конфігурація, необхідна для складання решти проекту для цілей розробки або розгортання.
Добре ігнорувати /bower_components
dir та зареєструватися лише bower.json
та bower-locker.bower.json
подати файл, якщо ви створюєте файл блокування за допомогою шафи-шафки, написаної Шон Лонасом .
Перед тим, як створити шафку-шафку, був недолік, спричинений тим, що балончик не має можливості усадки, але це може бути усунено вищевказаною бібліотекою.
Для його виконання виконайте наступні команди:
npm install bower-locker -g
або
yarn global add bower-locker
потім генеруйте файл блокування на основі наявного bower.json
файлу шляхом запуску:
bower-locker lock
Початковий bower.json
файл буде перейменований наbower-locker.bower.json
.gitignore
файл"