作者:江剑锋
Bower为何物
Bower是一个Web开发的包管理软件。前端开发中,或多或少,都会以来于现成的framework
或者lib
,如bootstrap
、jquery
等。每次编写代码之前,都需要从网上下载,或者从硬盘深处找出珍藏的,项目所依赖的框架或者库文件。同时,所下载的文件,又可能以来与另外的库文件。Bower的诞生,正是为了解决此繁琐的以来关系的。
需要注意的是,Bower的运行,依赖于版本控制工具git,从github拉取以来信息。
安装Bower
如《Node.js介绍》所说,很多前端工具,都是由Node.js
所编写的,Bower也不例外。因此,安装Bower之前,请确保已经安装好Node.js
环境。由于Bower运行,需调版本控制工具git,因此也需要确保环境已经安装了git。
npm install -g bower
通过npm
工具,自动安装bower。如果初次安装失败,可能是由于网络的原因,不妨多试几次。Linux和Mac的用户可能还需要root权限。
用法
通常,每个工具都自带有一定的帮助文档。
bower help
该命令可以显示bower工具的帮助信息。
安装包
bower install
运行命令bower install
,工具会为我们自动下载制定包名的文件。也可以制定特定的版本。
bower install#
那么,bower是如何根据package名,就能够帮助我们下载所需的包呢?bower又是从哪里下载的呢?
原来Bower对package的名称是有所约定的,不是任意名词都能下载到。
- 在Bower上注册过的名称, 例如, jquery. ‡
- github上的公有仓库, 例如, git://github.com/someone/some-package.git. ‡
- github上的私有仓库, 例如, https://github.com/someone/some-package.git. 如果协议是
https
,那么工具会询问你访问私有仓库的用户名和密码。如果协议是git
,例如, git@github.com:someone/some-package.git,那么会使用你环境中的公钥进行尝试‡ - 本地的git仓库 ‡
- 远程公有的SVN仓库, 例如., http://package.googlecode.com/svn/. ‡
- 私有的SVN仓库,例如., svn+ssh://package.googlecode.com/svn/. ‡
- 本地的SVN仓库,例如file:///path/to/svn/. ‡
- A shorthand endpoint, e.g., someone/some-package (defaults to GitHub). ‡
- 包含一个文件的远程URL,可以是
zip
包或者tar
包,工具会自动解包。
也可以在http://bower.io/search 搜索包名、关键词等,以确定是否存在。
安装依赖
如package.json
,Bower工具也有一个bower.json
文件,里面记录项目的依赖。
bower install
运行bower install
工具,亦会自动下载依赖。
更多用法,参考官方文档http://bower.io/