使用 Bower 创建包

bower.json

bower.json 中声明了一系列与包有关的内容,它与 NodeJS 的 package.json 或 Ruby 的 Gemfile  非常类似。我们可以使用 bower init 创建 bower.json

$ bower init

bower.json 的规范中的选项,主要包括:

  • name 包名,必选。
  • version 有意义的版本号。
  • main 字符串或者数组,指定主要会用到包里面哪些文件。
  • ignore 数组,一系列文件名或者目录,告诉bower在安装包的时候忽略指定的内容。
  • keywords 字符串数组,推荐添加,主要是帮助用户能够搜索到你的包。
  • dependencies 哈希结构,依赖的包,可以指定版本号,版本号范围参考
  • devDependencies 哈希结构,生产环境下依赖的包,版本号范围参考
  • private 布尔值,设置为true代表你想保持私有,并且将来不会发布它。

{
  "name": "my-project",
  "version": "1.0.0",
  "main": "path/to/main.css",
  "ignore": [
    ".jshintrc",
    "**/*.txt"
  ],
  "dependencies": {
    "<name>": "<version>",
    "<name>": "<folder>",
    "<name>": "<package>"
  },
  "devDependencies": {
    "<test-framework-name>": "<version>"
  }
}

维护依赖

使用 bower install package --save 能够将包安装到你的项目中,同时将依赖关系写入到 bower.json 的 dependencies 数组。

# install package and add it to bower.json dependencies
$ bower install <package> --save

同理,使用 bower install package --save-dev 可以将包写入到 bower.json 的 devDependencies 数组。

# install package and add it to bower.json devDependencies
$ bower install <package> --save-dev

注册包

一旦注册了你的包,别人就可以通过名字搜索安装它,如:bower install my-package-name。如果要注册包,需要注意下面几点:

  • 包名称必须遵守 bower.json 规范。
  • 当前工作目录里必须包含有效的JSON清单。
  • 你的包需要使用semver 规范的 Git tags。
  • 你的包必须在GIT上是公开可用的,比如发布到 GitHub 上,切记要push你的tags。
  • 对于私有包,你可以考虑使用私有方法注册

然后使用 bower register 注册:

bower register <my-package-name> <git-endpoint>
# for example
$ bower register example git://github.com/user/example.git

Bower 不支持类似 GitHub 样式的命名空间(org/repo),但是我们鼓励你使用 – 连接相关包来命名,比如:angular-paper-

取消包注册

我们以后可以使用 bower unregister package 来取消包的注册,但是如果你的包托管在 GitHub 上,并且你是所属者或者合作者,目前我们可以使用 curl 来操作。

curl -X DELETE "https://bower.herokuapp.com/packages/package?access_token=<token>"

package 是你的包名,access_token 是 GitHub 上的访问令牌,你可以从设置里面获取它。

在做完改动后,你可以使用 bower cache clean 来清除本地缓存。

发表评论