API
Команды
Справочник по командной строке
- cache
- help
- home
- info
- init
- install
- link
- list
- login
- lookup
- prune
- register
- search
- update
- uninstall
- unregister
- version
cache
$ bower cache <command> [<args>]
Управление кэшем bower
cache clean
$ bower cache clean $ bower cache clean <name> [<name> ...] $ bower cache clean <name>#<version> [<name>#<version> ..]
Очистка кэшированных пакетов
cache list
$ bower cache list $ bower cache list <name> [<name> ...]
Список кэшированных пакетов
help
$ bower help <command>
Отображение справки по Bower
home
$ bower home $ bower home <package> $ bower home <package>#<version>
Открывает страницу пакета в вашем любимом браузере.
Если параметр <package> не передан, открывает страницу домашней страницы локального пакета.
info
$ bower info <package> $ bower info <package> [<property>] $ bower info <package>#<version> [<property>]
Отображает общую информацию о пакете или конкретной версии.
init
$ bower init
Интерактивно создать файл bower.json
install
$ bower install [<options>] $ bower install <endpoint> [<endpoint> ..] [<options>]
Установка зависимостей проекта рекурсивно.
Зависимости проекта состоят из:
-
dependenciesуказанные вbower.jsonпроекта - Все «внешние» зависимости, не указанные в
bower.json, но присутствующие вbower_components - Любые дополнительные
<endpoint>переданные в качестве аргумента этой команде
Когда используется флаг --save, все дополнительные конечные точки сохраняются в dependencies в bower.json.
Bower рекомендует всегда использовать флаг --save для достижения воспроизводимых установок между машинами.
Конечные точки могут иметь несколько форм:
<package><package>#<version><name>=<package>#<version>
Где:
-
<package>это URL пакета, физическое расположение или имя реестра -
<version>это допустимый диапазон, коммит, ветвь и т. д. -
<name>это имя, которое он должен иметь локально.
<package> может быть любым из следующего:
| Имя зарегистрированного пакета | jquerynormalize.css |
| Git конечная точка | https://github.com/user/package.gitgit@github.com:user/package.git |
| Git конечная точка без .git | git+https://github.com/user/packagegit+ssh://git@github.com/user/package |
| Локальная папка | my/local/folder/ |
| Общедоступная конечная точка Subversion | svn+http://package.googlecode.com/svn/ |
| Закрытая конечная точка Subversion | svn+ssh://package.googlecode.com/svn/svn+https://package.googlecode.com/svn/ |
| Сокращенная запись (по умолчанию GitHub) | user/package |
| URL | http://example.com/script.jshttp://example.com/style.csshttp://example.com/package.zip (содержимое будет извлечено)http://example.com/package.tar (содержимое будет извлечено) |
Версия может быть:
| версия semver | #1.2.3 |
| диапазон версий | #1.2#~1.2.3#^1.2.3#>=1.2.3 <2.0 |
| Git тег | #<tag> |
| Git коммит SHA | #<sha> |
| Git ветвь | #<branch> |
| Ревизия Subversion | #<revision> |
Параметры установки
-
-F,--force-latest: Принудительная установка последней версии при конфликте -
-p,--production: Не устанавливать devDependencies проекта -
-S,--save: Сохранение установленных пакетов в зависимости bower.json проекта -
-D,--save-dev: Сохранение установленных пакетов в devDependencies bower.json проекта -
-E,--save-exact: Конфигурирование установленных пакетов с точной версией вместо semver
link
$ bower link $ bower link <name> [<local name>]
Функция link позволяет разработчикам легко тестировать свои пакеты. Связывание — двухэтапный процесс.
Использование «bower link» в папке проекта создает глобальную ссылку. Затем в другом пакете, bower link <name> создаст ссылку в папке components, указывающую на ранее созданную ссылку.
Это позволяет легко тестировать пакет, поскольку изменения будут отражаться немедленно. Когда ссылка больше не нужна, просто удалите её с помощью bower uninstall <name>.
list
$ bower list [<options>]
Список локальных пакетов и возможных обновлений.
Параметры списка
-
-p,--paths: Генерирует простое сопоставление источников JSON -
-r,--relative: Делает пути относительными к свойству конфигурации каталога, которое по умолчанию равно bower_components
lookup
$ bower lookup <name>
Поиск URL пакета по имени
login
$ bower login
Авторизация в GitHub и хранение учетных данных. Требуется для отмены регистрации пакетов.
Параметры входа
-
-t,--token: Передача существующего токена аутентификации GitHub вместо запроса имени пользователя и пароля
prune
$ bower prune
Удаляет локальные лишние пакеты
register
$ bower register <name> <url>
Регистрация пакета
search
$ bower search $ bower search <name>
Поиск всех пакетов или конкретного пакета.
update
$ bower update <name> [<name> ..] [<options>]
Обновление установленных пакетов до их новейшей версии в соответствии с bower.json.
Параметры обновления
-
-F,--force-latest: Принудительная установка последней версии при конфликте -
-p,--production: Не устанавливать devDependencies проекта -
-S,--save: Обновлениеdependenciesв bower.json -
-D,--save-dev: ОбновлениеdevDependenciesв bower.json
uninstall
$ bower uninstall <name> [<name> ..] [<options>]
Удаление пакета локально из каталога bower_components
Параметры удаления
-
-S,--save: Удаление удалённых пакетов из зависимостей проекта bower.json -
-D,--save-dev: Удаление удалённых пакетов из devDependencies проекта bower.json
unregister
$ bower unregister <package>
Отмена регистрации пакета.
version
$ bower version [<newversion> | major | minor | patch]
Запустите это в директории пакета, чтобы изменить версию и записать новые данные обратно в файл bower.json.
Аргумент newversion должен быть допустимой строкой semver или допустимым вторым аргументом semver.inc (одним из «build», «patch», «minor» или «major»). В последнем случае текущая версия будет увеличена на 1 в указанном поле.
Если запуск производится в репозитории git, он также создаст коммит и тег версии и завершится ошибкой, если репозиторий не чистый.
Параметры версии
-
-m,--message: Настройка пользовательского сообщения для коммита и тега git
Если передан параметр конфигурации --message (сокращенно -m), bower будет использовать его в качестве сообщения для коммита при создании коммита версии. Если сообщение конфигурации содержит %s, оно будет заменено на номер результирующей версии. Например:
$ bower version patch -m "Upgrade to %s for reasons"
Параметры
force
-f, --force
Делает различные команды более жёсткими
-
bower install --forceповторно устанавливает все установленные компоненты. Он также принудительно устанавливает даже тогда, когда в каталоге components есть не-bower директории с таким же именем. Добавление--forceтакже обходит кэш и всё равно записывает в кэш. -
bower uninstall <package> --forceпродолжает удаление даже после конфликта зависимостей -
bower register <package> --forceиbower unregister <package> --forceпропускают подтверждение. Вход в систему всё равно необходим.
json
-j, --json
Вывод потребляемого JSON
loglevel
-l, --loglevel
Уровень отчётов журналов. Возможные значения: error, conflict, warn, action, info, debug
offline
-o, --offline
Не использовать сетевое подключение
quiet
-q, --quiet
Выводить только важную информацию. Это псевдоним для --loglevel=warn.
silent
-s, --silent
Не выводить ничего, кроме ошибок. Это псевдоним для --loglevel=error. Silent также полезен, если у вас есть частные компоненты, которые могут раскрыть учётные данные в вашей среде CI.
verbose
-V, --verbose
Делает вывод более подробным. Это псевдоним для --loglevel=debug.
allow-root
--allow-root
Разрешает запуск команд от имени root. Bower — это команда пользователя, нет необходимости выполнять её с правами суперпользователя. Однако, если вы всё же хотите запускать команды с sudo, используйте опцию --allow-root.
Использование пакета
Вы можете использовать инструменты сборки для лёгкого использования пакетов Bower.
Если вы используете bower list --paths или bower list --paths --json, вы получите простое сопоставление имён с путями:
$ bower list --paths # or $ bower list --paths --json
{
"backbone": "bower_components/backbone/backbone.js",
"jquery": "bower_components/jquery/dist/jquery.js",
"underscore": "bower_components/underscore/underscore.js"
} Каждая команда поддерживает опцию --json, которая заставляет Bower выводить JSON. Результат команды выводится в stdout, а ошибки/журналы — в stderr.
Программный API
Bower предоставляет мощный программный API. Все команды доступны через объект bower.commands.
var bower = require('bower');
bower.commands
.install(['jquery'], { save: true }, { /* custom config */ })
.on('end', function (installed) {
console.log(installed);
});
bower.commands
.search('jquery', {})
.on('end', function (results) {
console.log(results);
}); Команды излучают четыре типа событий: log, prompt, end, error.
-
logизлучается для отчёта о состоянии/прогрессе команды. -
promptизлучается всякий раз, когда требуется запросить у пользователя. -
errorбудет излучаться только в случае возникновения проблем. -
endизлучается при успешном завершении команды.
Для лучшего понимания того, как это работает, вы можете ознакомиться с нашим файлом bin.
При программном использовании Bower запросы пользователя отключены по умолчанию. Вы можете включить их при вызове команд с interactive: true в конфигурации. Это требует от вас прослушивания события prompt и обработки запросов самостоятельно. Самый простой способ — использовать модуль npm inquirer, как показано ниже:
var inquirer = require('inquirer');
bower.commands
.install(['jquery'], { save: true }, { interactive: true })
// ..
.on('prompt', function (prompts, callback) {
inquirer.prompt(prompts).then(callback);
}); Запуск на сервере непрерывной интеграции
Bower будет пропускать некоторые интерактивные операции, если найдет переменную окружения CI установленной в значение true. Вы обнаружите, что переменная CI уже установлена для вас на многих серверах непрерывной интеграции, например, CircleCI и Travis-CI.
Вы можете попытаться установить переменную CI вручную перед выполнением команд Bower. На Mac или Linux, export CI=true а на Windows set CI=true
Если по какой-то причине вы не можете установить переменную окружения CI, вы можете использовать флаг --config.interactive=false.
$ bower install --config.interactive=false
Режим без взаимодействия
Bower по умолчанию работает в интерактивном режиме. Есть несколько способов его отключения:
- передавая
CI=trueв переменных окружения - передавая
--config.interactive=falseв команду Bower - подключая пайп к Bower (например,
bower install | cat) - перенаправляя вывод в файл (например,
bower install > logs.txt) - выполнение Bower через его Программный API
Когда интерактивный режим отключен:
-
bower initне работает -
bower registerиbower unregisterобходят подтверждение -
bower loginне выполняется, если не указан параметр--token -
bower installне задает вопрос о выборе при конфликтах разрешения, а игнорирует -
bower uninstallне спрашивает о подтверждении, если зависимость должна быть удалена
Использование локального кэша
Bower поддерживает установку пакетов из локального кэша – без подключения к интернету – если пакеты были установлены ранее.
$ bower install <package> --offline
Содержимое кэша можно перечислить с помощью bower cache list:
$ bower cache list
Кэш можно очистить с помощью bower cache clean:
$ bower cache clean
© 2018 Bower contributors
Licensed under the MIT License.
https://bower.io/docs/api