bower——a package manager for the web

前言

bower是twitter推出的一个客户端技术的软件包管理器,可管理的组件包括HTML, CSS, JavaScript,fonts or even image files等这些网络资源。Bower不会连接或缩小代码或执行任何其他操作,只是安装所需软件包及其依赖关系的正确版本。Bower通过从各处获取和安装软件包,查找,下载和保存您要查找的内容。Bower在配置文件bower.json中跟踪这些包。说到包管理器,就不得不提到npm了,npm安装的一般是node环境下的组件,安装的模块位于项目根目录下的node_modules文件夹内。npm一般作用于后端,bower一般作用于前端,不过官方已经停止维护bower了,他们建议使用npm来管理,随着CommonJS普及,前后端今后统一使用npm是大势所趋。

Install Bower

1
$ npm install -g bower

Bower安装前需要先安装node,npm以及git。之后可以通过bower help查看帮助命令,来确定bower是否安装成功。下面的命令可以更新卸载包:

1
2
$ npm update -g bower #更新
$ npm uninstall --global bower #卸载

Getting started

Install package

Bower安装的包在bower_components目录下

1
bower install <package>

这个package可以是一个 GitHub shorthand,a Git endpoint,a URL and more。

1
2
3
4
5
6
7
8
9
10
# installs the project dependencies listed in bower.json
$ bower install
# registered package
$ bower install jquery
# GitHub shorthand
$ bower install desandro/masonry
# Git endpoint
$ bower install git://github.com/user/package.git
# URL
$ bower install http://example.com/script.js

Save packages

通过bower init创建一个bower.json文件,然后用bower install package --save保存新的依赖到bower.json

Use packages

既可以通过Grunt,RequireJS和bower一起使用,也可以直接使用,像下面这样:

1
<script src="bower_components/jquery/dist/jquery.min.js"></script>

update package

1
2
$ bower update
$ bower update <name>

uninstall package

1
$ bower uninstall <name>

list项目所使用的所有库

1
2
3
$ bower list
or
$ bower ls

bower

search package

1
$ bower search <name>

Finds all packages or a specific package.

change default install dictionary

.bowerrc文件,通常放在项目根目录下。

1
2
3
{
"directory" : "bower_components"
}

directory:存放库文件的子目录名。详细配置请看:https://github.com/bower/spec/blob/master/config.md